有什么方法可以找出何时UITableView
从其数据源中查询数据?
的无viewDidLoad
/ viewWillAppear
/ viewDidAppear
关联的视图控制器(方法UITableViewController
)是使用在这里,因为他们都火得太早。它们中的一个(完全可以理解)不能保证对数据源的查询暂时已经完成(例如,直到视图滚动为止)。
一个解决办法,我发现是调用reloadData
的viewDidAppear
,因为当reloadData
返回时,表视图是保证完成查询数据源,它更需要的时间存在。
但是,这似乎有点令人讨厌,因为我认为这会导致在reloadData
首次加载数据源时两次(自动一次,由于调用而一次)要求输入相同的信息。
我要这样做的原因是我想保留-的滚动位置,UITableView
但要一直到像素级别,而不仅仅是到最近的行。
当恢复滚动位置(使用scrollRectToVisible:animated:
),我需要的表视图已经有足够的数据在里面,否则scrollRectToVisible:animated:
方法调用什么也不做(这是如果你把它自己的呼叫任何会发生什么viewDidLoad
,viewWillAppear
或viewDidAppear
)。
狐的传说
ibeautiful
相关分类