NSMutableAttributeString在UIAlertController中的iOS 10.0中不起作用

时间:2016-11-21 10:01:39

标签: ios10 uialertcontroller nsmutableattributedstring

你好使用NSMutableAttributedString来显示不同的字体,但在UIAlertController中有相同的大小,这里的问题是它显示了两种不同的字体是正确的,但它也显示了两种不同的尺寸。这是我的代码

 UIFont *regularFont = [UIFont fontWithName:@"HelveticaNeue" size:11.0];
UIFont *boldFont = [UIFont fontWithName:@"HelveticaNeue-Bold" size:11.0];

UIAlertController *alertObj = [UIAlertController alertControllerWithTitle:nil message:messageStr preferredStyle:UIAlertControllerStyleAlert];

NSMutableAttributedString *attMessage = [[NSMutableAttributedString alloc] initWithString:messageStr];
[attMessage addAttribute:NSFontAttributeName value:regularFont range:NSRangeFromString(messageStr)];
[attMessage addAttribute:NSFontAttributeName value:boldFont range:NSMakeRange(25, 6)];
[attMessage addAttribute:NSFontAttributeName value:boldFont range:NSMakeRange(35, 15)];

[alertObj setValue:attMessage forKey:@"attributedMessage"];

结果可以匹配。任何帮助将不胜感激

enter image description here

1 个答案:

答案 0 :(得分:1)

attributedMessage属性不公开,使用它是在审核时拒绝您的应用的好方法。如果真的需要设置对话的样式并在App Store上分发应用程序,我认为您应该构建自己的组件来显示弹出窗口。