当可见矩形表中的UITableView Section Headers不可见

时间:2013-04-17 15:38:13

标签: ios objective-c uitableview uiscrollview drawrect

我有UIScrollView水平叠加3 UITableViews。我使用顶部的选项卡控制器在这些表视图之间切换。但是,当我切换到第二或第三个标签并快速切换回第一个section headers时不显示。滚动tableView时会显示它们。这些是custom headers(jfyi)。当tableView可见时,我尝试调用setNeedsDisplay,但这没有用,因为根据Apple Docs:

  

如果只是更改视图的几何图形,则通常不会重绘视图。而是根据视图的contentMode属性中的值调整其现有内容。重新显示现有内容可以避免重绘未更改内容的需要,从而提高性能。

因为这里只有视图的几何形状发生变化,所以没有用。此问题也发生在所有版本iOS 5~6.1以及模拟器和设备上。值得庆幸的是,这不会使应用程序崩溃,但它仍然存在问题。有人可以帮忙吗?我附图片作为参考。首先显示问题,第二个:滚动“head(er)less”tableview

之后

Headless TableView sections We have a Head. Ta-da !!

修改: 我使用简单的scrollRectToVisible:animated:在tableviews之间切换。这样就可以了,但我发现当我设置...animated:NO时,一切都还可以。问题发生在...animated:YES

1 个答案:

答案 0 :(得分:0)

对于相应的tableview,似乎同时显示和滚动的问题。所以你在这里可以做的是:

  1. 删除滚动动画 或
  2. 只需将表格视图滚动到标签新闻事件的顶部即可 或
  3. 只需重新加载可见的tableView
  4. 即可