所以用1.)第二个单词“green”不会显示绿色背景(BUG!)(“cell”是一个UItableVIEwCell,UILabel“label”作为子视图):
1.)
text = [[NSMutableAttributedString alloc] initWithString:@"Green is green. (-> BUG)"];[text addAttribute:NSBackgroundcolorAttributename value:[UIcolor greencolor] range:(NSRange){9,5}];cell.label.attributedText=text
使用2.)和3.)背景显示正确:
2.)
text = [[NSMutableAttributedString alloc] initWithString:@"Green is green. (-> Ok)"];[text addAttribute:NSBackgroundcolorAttributename value:[UIcolor greencolor] range:(NSRange){0,5}];[text addAttribute:NSBackgroundcolorAttributename value:[UIcolor greencolor] range:(NSRange){9,5}];cell.label.attributedText=text
3.)
text = [[NSMutableAttributedString alloc] initWithString:@"Green is green. (-> Ok)"];[text addAttribute:NSBackgroundcolorAttributename value:[UIcolor greencolor] range:(NSRange){0,5}];cell.label.attributedText=text
查找截图和XCode 6项目在这里:Screenshot and XCode 6 Project
对我来说似乎是iOS 8中的一个BUG – 所以报告给了苹果.
解决方法 尝试这样做,首先在整个标签中使用透明颜色应用一个额外的NSBackgroundcolorAttributenametext = [[NSMutableAttributedString alloc] initWithString:@"Green is green. (-> BUG)"];[text addAttribute:NSBackgroundcolorAttributename value:[UIcolor clearcolor] range:(NSRange){0,text.length}]; //Fix[text addAttribute:NSBackgroundcolorAttributename value:[UIcolor greencolor] range:(NSRange){9,5}];cell.label.attributedText=text总结
以上是内存溢出为你收集整理的uitableview – 在iOS 8上显示NSMutableAttributedString全部内容,希望文章能够帮你解决uitableview – 在iOS 8上显示NSMutableAttributedString所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)