Uitableview 当pop后出现视图时,ios 8 tableview会自动重新加载

Uitableview 当pop后出现视图时,ios 8 tableview会自动重新加载,uitableview,ios8,Uitableview,Ios8,我有一个表视图,单击第7行,我会推另一个视图。当我使用pop返回时,tableview会在ios8中自动重新加载。它不会发生在ios 7上 问题是未调用0,1,2,3单元格的cellForRow和HeightForRow。因此,表格向上滚动第7行,不可见。可见9、10、11个细胞 当我回到那个视图时,我希望桌子保持原样 我保存了selectedIndex并将表格滚动到视图中的特定索引 [self.table_exhibitorProfile scrollToRowAtIndexPath:self

我有一个表视图,单击第7行,我会推另一个视图。当我使用pop返回时,tableview会在ios8中自动重新加载。它不会发生在ios 7上

问题是未调用0,1,2,3单元格的cellForRow和HeightForRow。因此,表格向上滚动第7行,不可见。可见9、10、11个细胞

当我回到那个视图时,我希望桌子保持原样

我保存了selectedIndex并将表格滚动到视图中的特定索引

[self.table_exhibitorProfile scrollToRowAtIndexPath:self.selectedIndexPath atScrollPosition:UITableViewScrollPositionNone animated:NO];

它显示的是第七个单元格,但它的位置和原来不一样。它将进入顶部。

除非您告诉它,否则它不应该重新加载。我不会在iOS 8中自动重新加载它

我能想到的唯一可能性就是

  • 您正在两个视图控制器中使用CoreData、NSFetchedResutsController和相同的managedObjectContext。如果第二个视图控制器中的managedObjectContext发生更改,当您弹出时,fetchedResultsController将重新加载该表,或者

  • 您正在调用
    viewwillbeen()
    viewdidebeen()
    中的
    tableView.reloadData()


  • 我也有同样的问题,我就是这样解决的:

    根据苹果的文档:

    UITableView overrides the layoutSubviews method of UIView 
    so that it calls reloadData only when you create a new 
    instance of UITableView or when you assign a new data source.
    
    在我的例子中,我在
    视图中将表视图的
    数据源设置为nil将消失:
    并在
    视图中将其设置回
    self
    将出现:
    ,从而导致重新加载数据

    当我将
    dataSource
    分配移动到
    viewDidLoad


    希望这有帮助

    您是否正在调用ViewDidDisplay/ViewWillDisplay中的[tableView重载数据]?否。我无法调用。它在ios7中运行良好。是的,我也遇到过这个问题。我从核心数据填充表行,但我没有显式地链接它们,只是使用核心数据,就好像它是一个字典数组或其他东西一样。但是,如果我操作核心数据(添加或删除行),会导致重新加载tableview。不知道为什么。您是否设置了
    self.tableView.estimateDroweight
    值?这里也有同样的问题。演示项目,以防您想要提出并发布解决方案:我不使用核心数据。表行具有来自本地数组的值。下一个视图是完全独立的。我只发送一个键,数据是从JSon获取的。关于ViewWillExample和ViewDidExample,我无法调用表重新加载。您是否尝试注释掉
    ScrollToRowatineXpath:
    行并查看它是否仍然自动重新加载?那可能会把事情搞砸……是的。我后来补充说,伙计,这很难。您的数据模型中是否有任何东西可能会把事情搞砸?我曾经在我的数据模型中使用过一个枚举,我处理它的方式最终导致了一个类似于您所描述的问题。如果第二个VC中的表视图只有一行,当我跳回初始VC时,该视图也只有一行。不知道这是否有帮助,但你可以看看你的模型中是否有任何东西可能会导致类似的效果。它肯定是在重新加载@trevorj您可能只是在另一个方法上中断。在numberOfSectionsInTableView上设置断点。这很容易复制。创建模板主控细节项目,或从my github抓取