8

我正在尝试在自定义 UIButton 上的标题中添加下划线,但是按照此处找到的示例,我无法将其显示在屏幕上。

这是我尝试使用的代码:

NSMutableAttributedString *commentString = [[NSMutableAttributedString alloc] initWithString:@"The Quick Brown Fox"];

[commentString addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:NSMakeRange(0, [commentString length])];

[button setAttributedTitle:commentString forState:UIControlStateNormal];

这没有出现。但如果我只是做一个普通的,像这样:

[button setTitle:@"The Quick Brown Fox" forState:UIControlStateNormal];

这显示得很好。有人能告诉我我错过了什么吗?

4

1 回答 1

11

我意识到这里的问题。我以为它没有出现,因为我看不到它。但是,它出现了,它与背景颜色相同。

我错误地认为那[button setTitleColor:myColor forState:UIControlStateNormal];将是属性标题也将使用的颜色。但是,我的背景是黑色的,并且 NSMutableAttributedString 必须默认为黑色。

[commentString addAttribute:NSForegroundColorAttributeName value:myColor  range:NSMakeRange(0, [commentString length])];

使其正确显示。

于 2013-08-14T15:15:46.143 回答