2012-11-29 5 views
1

클리핑, 나는 아래와 같이 반경 사용자 정의 그림자를 만들 drawTextInRect 방법을 변경 :UIButton.titleLabel 그림자

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); 
float colorValues[] = {0, 0, 0, opacity}; 
CGColorRef shadowColor = CGColorCreate(colorSpace, colorValues); 
CGSize shadowOffset = CGSizeMake(offsetX, offsetY); 
CGContextSetShadowWithColor (context, shadowOffset, radius, shadowColor); 

이 잘 작동합니다. 그것은 그림자를 만듭니다. 나는 titleLabel의 경계를 변경하고 같은 drawTextInRect 방법이라고 : 때문에 titleLabel 경계의

button.titleLabel.bounds = CGRectMake(button.titleLabel.bounds.origin.x, button.titleLabel.bounds.origin.y, button.titleLabel.bounds.size.width, button.titleLabel.bounds.size.height); 
[button.titleLabel drawTextInRect:button.titleLabel.bounds]; 
[button setNeedsLayout]; 

, 그림자 클리핑된다.

답변

0

어떤 도움이 크게 감사합니다 ... 당신은 층과 같은 노력했다. 나는 그것이 당신의 문제를 분류 할 것이고 당신이 한 일을 요구하지 않을 것이라고 생각합니다.

버튼의 레이어 (CALayer) 개체를 만들고 필요한 속성을 사용하기 만하면됩니다. 레이어를 사용하려면 QuartzCore 프레임 워크를 가져와야합니다.

시도해보십시오. 아무 걱정없이 나에게 큰소리로 말하십시오.