iOS7 UILabel 视觉故障
Posted
技术标签:
【中文标题】iOS7 UILabel 视觉故障【英文标题】:iOS7 UILabel visual glitch 【发布时间】:2013-09-20 10:00:33 【问题描述】:我在重现 UITableViewController 中的视觉故障时遇到问题。实际上是 SensibleTableView 组件中的 SCTableViewController。
所以我在 -viewDidLoad: 中构造一个静态分组的 TableView。
- (void)viewDidLoad
[super viewDidLoad];
SCTableViewSection *sec = [SCTableViewSection sectionWithHeaderTitle:@"hdas"];
SCLabelCell *c1 = [SCLabelCell cellWithText:@"dsan"];
[sec addCell:c1];
[[self tableViewModel] addSection:sec];
我看到的是标签右边缘有一个奇怪的细灰色边框。 (用红色三角标记)
我会从哪里删除这个栏?为什么会出现?
我尝试设置背景颜色、图层边框、图层阴影、textShadow 等。
【问题讨论】:
对我来说看起来像“在此处输入文本”光标 - 它不是 UITextField 而不是标签? 此视图中的任何地方都没有 UITextField :-( 当你把标签变宽时,条纹会向右移动吗? 是的。它似乎是附加在 UILabel 的框架上。 这也发生在我身上,当我尝试通过在 UITableViewCell 中设置视图的背景颜色来优化混合图层时。非常烦人,我还没有找到令人满意的解决方案。 【参考方案1】:使用UILabel.backgroundColor,设置标签的backgroundColor 会引发这个问题。 您可以通过 UILabel.layer.backgroundColor 设置图层的背景颜色来修复此错误。
“将背景颜色设置为清晰已为我修复。”通过 Nuthinking。也可以修复这个错误。但在 tableView 中,这可能会稍微降低性能。
【讨论】:
这就是答案。不错。【参考方案2】:将背景颜色设置为清晰固定。
【讨论】:
【参考方案3】:将视图的 OPAQUE 属性设置为 YES 为我修复了它。
【讨论】:
以上是关于iOS7 UILabel 视觉故障的主要内容,如果未能解决你的问题,请参考以下文章
ios7自定义与uilabel中的nstextattachment交互
UILabel.attributedText 不显示在 iPhone 4 + iOS 7.0.3
UIlabel layer.cornerRadius 在 iOS 7.1 中不起作用