代码之家  ›  专栏  ›  技术社区  ›  Shaggy Frog

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

  •  0
  • Shaggy Frog  · 技术社区  · 15 年前

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

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

    是否有一些简单/自动的方法来获取主视图 UISplitViewController NSIndexPath UITableView scrollToRowAtIndexPath:atScrollPosition:animated: 在设备旋转之前/之后将其跳转到正确的位置,但我希望如果我拨动正确的开关,这已经在苹果方面自动完成了。

    1 回复  |  直到 15 年前
        1
  •  3
  •   Shaggy Frog    15 年前

    原来这是苹果方面的一个“开关”——特别是 clearsSelectionOnViewWillAppear 中的属性 UITableViewController YES 默认情况下。设置为 NO 让它记住自己的状态。

    推荐文章