swift - 在不重新加载自定义 UITableViewCell 的情况下设置 UILabel
Posted
技术标签:
【中文标题】swift - 在不重新加载自定义 UITableViewCell 的情况下设置 UILabel【英文标题】:swift - set UILabel without reload of custom UITableViewCell 【发布时间】:2016-04-27 09:09:26 【问题描述】:是否可以在自定义 UITableViewCell 中为 UILabel 设置值而不重新加载单元格?
我已经尝试了很多排列:
let indexPath = NSIndexPath(forRow: 0, inSection: 0)
let cell = tableView.cellForRowAtIndexPath(indexPath) as! CustomTableViewCell1
cell.customLabel.text = "text goes here"
.. 我不明白为什么这不起作用。我在 UITableViewCell 中有一个 UITextField,当我设置 textField 值时,我只想更新标签,而不是重新加载整个单元格。有什么建议吗?
【问题讨论】:
您是否尝试在设置文本后启动 cell.customLabel.setNeedsDisplay()? @AlessandroOrnano - 谢谢,这个也可以 【参考方案1】: cell.customLabel.setNeedsDisplay()
【讨论】:
这个答案我比较容易理解。【参考方案2】:如果你想更新UIViews
,你需要把它们放到主线程中:
dispatch_async(dispatch_get_main_queue(),
cell.customLabel.text = "text goes here"
)
【讨论】:
你能在不重新加载单元格的情况下妥协单元格约束吗?我觉得太危险了.. 噢,我打错了:/。谢谢@Lion以上是关于swift - 在不重新加载自定义 UITableViewCell 的情况下设置 UILabel的主要内容,如果未能解决你的问题,请参考以下文章