【发布时间】:2010-05-09 05:24:50
【问题描述】:
我有一个基于拆分视图的应用程序,它呈现一个主从界面,并在纵向模式下使用弹出框来呈现主列表。弹出框显示了一个最终由NSFetchedResultsController 的子类填充的分段表视图。我可以点击工具栏按钮来显示主列表,滚动到任意行,然后点击该行来关闭弹出框。
我的问题是,如果表格滚动到第二部分的顶部,当我关闭弹出框然后点击工具栏按钮重新呈现它时,表格的滚动位置始终设置为第一行第二部分位于列表顶部。如果我没有滚动到第二部分的顶部,它会在表格再次出现时正确地记住它的滚动位置。
类似地,在横向模式下,如果我将表格滚动到第三部分的顶部然后旋转到纵向,当我回到横向时,滚动位置始终设置为第三部分的第一行位于列表的顶部。
我尝试在主视图控制器的-viewWillAppear 以及拆分视图委托的splitViewController:popoverController:willPresentViewController: 中调用-scrollToNearestSelectedRowAtScrollPosition:animated,但没有效果。有人知道我可能做错了什么吗?
【问题讨论】:
标签: iphone uitableview ipad uisplitviewcontroller uipopovercontroller