Layer를 이용해 View에 그림자(shadow) 입히기

Layer는 정말 봐도봐도 멋진 녀석인 것 같습니다.
더욱이 Layer는 CPU가 아닌 GPU를 사용하니 프로세서에 큰 부담도 없구요.
요즘 이래저래 Layer 만지는 재미에 빠져있는데요. 간단한 팁입니다.

Layer를 이용해서 View에 그림자(Shadow)를 넣는 방법입니다.

UIView *testView = [[UIView alloc] initWithFrame:CGRectMake(20.0f, 50.0f, 280.0f, 100.0f)];
UIBezierPath *shadowPath = [UIBezierPath bezierPathWithRect:testView.bounds];
testView.backgroundColor = [UIColor yellowColor];
[testView.layer setMasksToBounds:NO];
[testView.layer setShadowColor:[[UIColor blackColor] CGColor]];
[testView.layer setShadowOffset:CGSizeMake(0.0f, 0.0f)];
[testView.layer setShadowOpacity:1.0f];
[testView.layer setShadowRadius:3.5f];
[testView.layer setShadowPath:shadowPath.CGPath];
[self.view addSubview:testView];
[testView release];

그림자 범위를 조절할 때는 Radius 값을 조절하시면 되며,
그림자 위치를 조절할 때는 Offset 값을 조절하시면 됩니다.

 

오늘은 간단히 끝. =3=33

Comments (2)

  1. 안녕하세요~ 제가 찾던 정보네요.
    근데 전 왜 저렇게 했는데 testView.layer에 Shadow관련 메소드들이 죄다 찾을수 없다고 뜨죠..
    코드는 그대로 사용했는데 뷰에 layer에 메소드가 없네요….
    혹시 제가 빠트린부분이 있나요?

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.