UIButton与文本描边/大纲

时间:2013-03-27 14:15:30

标签: iphone ios objective-c xcode uibutton

我想绘制一个UIButton,其中的文字正在使用轮廓,即笔画。所以我尝试使用titleLabel制作我自己的自定义标签并分配给UIButton.titleLabel这不起作用。有人提到我可以在UILabel之上添加UIButton,但我不确定此解决方案是否合适。

有人可以推荐一个稳定的方法来解决这个问题吗?谢谢。

2 个答案:

答案 0 :(得分:6)

您可以使用

- (void)setAttributedTitle:(NSAttributedString *)title forState:(UIControlState)state

UIButton的方法。

例如。像这样的属性字符串

NSAttributedString *attributedText =
[[NSAttributedString alloc] initWithString:title
                                       attributes:@{NSStrokeWidthAttributeName: [NSNumber numberWithInt:-6],
                       NSStrokeColorAttributeName: titleBorderColor,
                   NSForegroundColorAttributeName: [UIColor whiteColor]}];

答案 1 :(得分:0)

您还可以将视图作为子视图添加到按钮中。 在此视图中,您可以放置​​标签,或者,如果需要,可以放置更多标签。一个带有两个不同格式化文本行的按钮。