在我的iPhone开发体验中,我遇到了一个特殊UITableView的奇怪问题。如果你看下面的截图:
alt text http://dl-client.getdropbox.com/u/57676/brokencell.png
你会注意到穿过'Jane Aba'牢房中间的一次罢工。
知道可能导致这种奇怪图形显示的原因吗?对于模拟器和运行2.2 SDK的实际设备都是如此。
根据要求,这是我的-tableView:cellForRowIndexPath:
方法:
*编辑*
我找到了问题所在。我不完全确定为什么这是问题,但确实如此。在我的RootViewController中,我在-initWithCoder:
方法中有以下代码行:
self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;
当我评论出来时,单元格(不在RootViewController中,但是在辅助控制器中)它已被解析。知道为什么会这样吗?
答案 0 :(得分:1)
我遇到了类似的问题。对我来说,单行是由创建的多余视图引起的,但从未调整大小或放置正确,因此是1像素高,漂浮在其他所有内容上。您还可以通过混淆UINavigationController关于其子视图集(通过直接向其布局容器添加视图)来解决此问题。
查看您的UI(xib文件和以编程方式创建的视图),查看不应存在或未使用的视图。编写一些代码来转储UI层次结构可能会有所帮助,因此您可以看到哪些视图在哪里。
答案 1 :(得分:0)
你在-tableView中做了什么特别的事:heightForRowAtIndexPath:method?
在我看来,行的高度设置不正确,因此单元格的内容在其边界之外扩展。
答案 2 :(得分:0)
在IB中将表格视图的像元高度设置为1像素时问题消失。在填充表格之前,似乎绘制了一个空表格,其中包含IB中设置的单元格高度的轮廓。 不要将单元格高度设置为0. IB不喜欢这样。 : - )