我创建了一个UITableViewController
的子类,它在我的故事板中用作View的自定义类。视图有许多部分/行被定义为原型单元格,它们被实例化并按预期显示。大多数UITableView
委托方法只是调用处理节数量,行等的超级方法。
我已经缓存了用于更新-viewDidLoad
上的单元格的内容,然后是一个异步操作,它从我的服务器重新加载内容并在之后重新绑定数据(在主线程上-performSelectorOnMainThread:
:) 。正是在这一点上,似乎任意地,一些单元格内容(主要是标签)将被清除数据,并且不会在10-15秒之间的任何地方更新到新数据。此时,在表格视图中显示或有时滚动的内容将导致内容显示。
我知道正在调用选择器,并且在主线程上,UI元素的文本属性正在设置但随机它们只是...不更新。我已经尝试在tableView,控制器的视图和-setNeedsDisplay
上添加-reloadData
on tableView(尽管最后一个似乎没必要,因为它们是原型单元格)都无济于事。
有人碰到过这个吗?
答案 0 :(得分:0)
我不确定这是否是由线程方面或如何处理tableView引起的。如果是tableView,请查看此post,因为在我正确处理动态原型tvCell之前,我的应用程序正在消失的数据有一些相似之处。
答案 1 :(得分:0)
我的评论确实解决了我的问题。似乎UILabel
在修改后没有更新,而是在内部决定何时重新绘制它们 - 无论你是否试图用display
或setNeedsDisplay强制它。
解决方案:使用UITextView
代替UILabel