我有一个标签,它是普通UIView
的子视图,而不是UITableView
/ UITableViewCell
,依赖于生成的事件,标签将设置相应的字符串。但有时候,在为标签设置新的字符串值之后,旧的字符串仍然存在,它会使两个字符串相互叠加。由于它很少发生,我不知道如何实现它,并且我找到的解决方案是否可以修复它。
以下是设置文字的代码:
messageLabel.text = message
有没有人知道标签会发生什么?也许标签不会更新它的布局。结果如下:
我确实检查了Debugging View Hierarchies并且只有一个带有覆盖文本的标签对象。 设置文本值的代码:
func didGenerateEvent(event: AnyObject) {
if let event = event as? Event {
switch event.type {
case .one:
setContent("This is message of event one.")
case .two:
setContent("This is message of event two, but longer.")
}
}
}
func setContent(message: String) {
messageLabel.text = message
}
答案 0 :(得分:0)
确保"清除图形上下文"复选框已启用。或者在代码中设置clearsContextBeforeDrawing。