UISplitViewController的主视图在旋转后丢失状态

时间:2010-08-27 00:43:05

标签: ipad rotation state uisplitviewcontroller

在iPad上,我注意到像Mail和WebMD这样的应用程序会在点击时突出显示“Master”(左)视图层次结构的最后一级。他们还记得旋转后的状态;如果您选择横向格式的电子邮件,然后旋转为纵向,并单击“收件箱”按钮以显示主视图弹出窗口,则仍会突出显示正确的项目,并将列表滚动到正确的位置。将其旋转回横向,它仍然是正确的。

我正在使用类似于Mail的iPad应用程序。如果我在横向上启动我的应用程序,从列表中选择一个项目,并旋转我的iPad,主视图似乎失去其状态;它的表格滚动到顶部,没有项目突出显示。即使设备然后返回到横向,列表仍然忘记了最后一个项目。

是否有一些简单/自动的方法可以在UISplitViewController中获取主视图以保存其状态?我想我可以通过存储最后一个项目的NSIndexPath来重现此行为,并使用UITableView的{​​{1}}将其跳转到设备轮换之前/之后的正确位置,但我我希望如果我翻转正确的开关,这已经在Apple方面自动完成了。

1 个答案:

答案 0 :(得分:3)

原来这是苹果方面的“转换” - 具体来说,clearsSelectionOnViewWillAppear中的UITableViewController属性默认设置为YES。将其设置为NO可让它记住它的状态。