2013-05-29 7 views
0

애플이 세부 정보를보기 위해 사용하는 tableView를 다시 만들려고합니다. iOS 6 앱 스토어 버튼과 유사한 버튼 만들기 (사진 포함)

enter image description here

나는 성공적으로 버튼 내부의 그림자를 제외하고, 구현을 완료했습니다. 세부 정보 버튼을 경계로 미묘한 그림자 효과가 나타나는 것을 주목하십시오.

다음
if(self.isSelected) { 

    CGContextRef context = UIGraphicsGetCurrentContext(); 

    CGContextSetFillColorWithColor(context, COLORWITHRGB(204, 204, 204).CGColor); 
    CGContextSetStrokeColorWithColor(context, COLORWITHRGB(141, 141, 141).CGColor); 


    CGSize labelTextSize = [self.titleLabel.text sizeWithFont: self.titleLabel.font]; 
    CGRect labelFrame = CGRectMake(rect.size.width - labelTextSize.width - 24, (rect.size.height - labelTextSize.height - 4)/2, labelTextSize.width + 14, labelTextSize.height + 4); 


    CGMutablePathRef path = CGPathCreateMutable(); 
    CGPathAddArc(path, NULL, labelFrame.origin.x + labelFrame.size.width - labelFrame.size.height/2, labelFrame.origin.y + labelFrame.size.height/2, labelFrame.size.height/2, M_PI/2, M_PI * 3/2, YES); 
    CGPathAddArc(path, NULL, labelFrame.origin.x + labelFrame.size.height/2, labelFrame.origin.y + labelFrame.size.height/2, labelFrame.size.height/2, M_PI * 3/2, M_PI/2, YES); 
    CGPathAddLineToPoint(path, NULL, labelFrame.origin.x + labelFrame.size.width - labelFrame.size.height/2, CGRectGetMaxY(labelFrame)); 

    CGContextAddPath(context, path); 
    CGContextDrawPath(context, kCGPathFillStroke); 

    CFRelease(path); 
} 

는 지금까지의 모습입니다 : 여기

내가 버튼 자체를 그리는 데 사용할 내 코드입니다 그것은 나쁜 보이지 않는

enter image description here

, 그러나 그것은이다 내가 찾는 것을 그만 두지 마라.

누구에게 의견이 있습니까?

답변

1

내부 그림자를 적용하고 싶습니다.

이 앱을 사용해보세요. http://www.paintcodeapp.com ... 코드를 작성하면 정말 편리합니다.

+0

답장을 보내 주셔서 감사합니다. 마이크,이 제품은 실제로 꽤 멋진 소프트웨어입니다. 그러나 우리는 지금 당장 아무것도 구입하지 않아도되도록 노력하고 있습니다. 평가판이 우리에게 원하는 것을 줄 수 있는지 알게 될 것입니다. – pob21

+0

트라이얼 버전을 사용하면 제작 한 코드를 볼 수 있지만 내보낼 수는 없다고 생각합니다. 내면의 그림자가 어떻게 생성되고 자신의 글을 쓰는지 알아내는 것으로 충분할 것입니다. –