簡體   English   中英

創建類似於iOS 6 App Store按鈕的按鈕(包含圖片)

[英]Create buttons similar to iOS 6 App Store buttons (pic included)

我正在嘗試重新創建Apple用於查看應用程序詳細信息的tableView。

在此處輸入圖片說明

除了按鈕內的陰影,我已經成功完成了實現。 請注意,在“詳細信息”按鈕的邊框處如何產生微妙的陰影效果。

這是我用來繪制按鈕本身的代碼:

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);
}

到目前為止的樣子:

在此處輸入圖片說明

看起來還不錯,但是並沒有放棄我想要的東西。

有沒有人有什么建議?

您要應用內部陰影。

http://www.paintcodeapp.com嘗試這個程序吧……它將為您編寫代碼,非常方便。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM