Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UITableViewCell子视图在重画之前不显示_Iphone_Ios_Uitableview_Uilabel - Fatal编程技术网

Iphone UITableViewCell子视图在重画之前不显示

Iphone UITableViewCell子视图在重画之前不显示,iphone,ios,uitableview,uilabel,Iphone,Ios,Uitableview,Uilabel,这个问题快把我逼疯了 我的故事板中有一个原型UITableViewCell。它包含一组子视图。其中一个子视图(UILabel)行为不正常 当tableview首次加载并显示时,所有单元格看起来都很好。但是,当tableview向下滚动时,最终会显示一个单元格,而不显示UILabel子视图。似乎它总是第一个被回收的细胞 但是,如果我继续向下滚动tableview,一旦行为不正常的单元格被tableview的顶部剪掉(当它开始从屏幕顶部滚动时),标签就会显示出来 因此,标签似乎就在那里,它接收我在c

这个问题快把我逼疯了

我的故事板中有一个原型UITableViewCell。它包含一组子视图。其中一个子视图(UILabel)行为不正常

当tableview首次加载并显示时,所有单元格看起来都很好。但是,当tableview向下滚动时,最终会显示一个单元格,而不显示UILabel子视图。似乎它总是第一个被回收的细胞

但是,如果我继续向下滚动tableview,一旦行为不正常的单元格被tableview的顶部剪掉(当它开始从屏幕顶部滚动时),标签就会显示出来

因此,标签似乎就在那里,它接收我在cellForRowAtIndexPath方法中分配给它的字符串。它只是因为某种原因没有被画出来。我曾尝试在不同的地方插入setNeedsDisplay消息,但没有效果

同样奇怪的是,我在不同的视图控制器中的情节提要中使用了非常相同的UITableViewCell子类和重复的视图层次结构,在那里我没有任何问题

有人知道我该如何揭开这个谜团吗


谢谢

听起来这只是使用可重用单元格时的一个问题,这意味着在准备滚动之前,可重用单元格上的值可能无法设置

听起来这只是使用可重用单元格时的一个问题,这意味着在准备滚动之前,可重用单元格上的值可能无法设置

在tableView:cellForRowAtIndexPath中初始化表格单元格或任何子视图后,是否正在修改该表格单元格或子视图?我是。我正在设置标签的文本,并使用其他自定义UIView子类执行一些其他操作。所有这些都很好。只是UILabel没有被画出来。我也有类似的事情发生在我身上。在一个特定单元格上,不会绘制一个标签。如果我破译了密码,电池看起来绝对正常。如果我设置了NeedsDisplay,它就会显示出来。快把我逼疯了!在tableView:cellForRowAtIndexPath中初始化表格单元格或任何子视图后,是否正在修改该表格单元格或子视图?我是。我正在设置标签的文本,并使用其他自定义UIView子类执行一些其他操作。所有这些都很好。只是UILabel没有被画出来。我也有类似的事情发生在我身上。在一个特定单元格上,不会绘制一个标签。如果我破译了密码,电池看起来绝对正常。如果我设置了NeedsDisplay,它就会显示出来。快把我逼疯了!我知道该值是在单元格出现在屏幕上之前设置的,因为所有其他子视图都已正确配置。只有标签没有画出来。当标签确实显示时,它的文本值是正确的,因此在单元格出现在屏幕上之前,该值似乎已与所有其他值一起设置。不确定您建议的解决方案是什么…我唯一能想到的是标签的视图没有添加为子视图,否则您可能希望发布cellForRowAtIndexPath代码。我知道,在单元格显示在屏幕上之前设置该值,因为所有其他子视图都已正确配置。只有标签没有画出来。当标签确实显示时,它的文本值是正确的,因此在单元格出现在屏幕上之前,该值似乎已与所有其他值一起设置。不确定您推荐的解决方案是什么…我唯一能想到的是标签的视图没有添加为子视图,否则您可能需要发布cellForRowAtIndexPath代码。