【问题标题】:How to retain indexPath value through multiple detail view controllers?如何通过多个详细视图控制器保留 indexPath 值?
【发布时间】:2011-07-25 02:52:57
【问题描述】:

如何通过多个详细视图控制器保留 RootViewController 中的 indexPath 值?

我有一个拆分视图控制器和多个带有工具栏的详细视图。

我希望能够在调用检索 indexPath.row 值并使用 indexPath.row+1 的方法时更改详细视图。

所以基本上,我希望每个视图控制器都有一个 selectedRow = indexPath 分配。目前我收到一个 indexPath not declared for use 错误。

【问题讨论】:

    标签: objective-c ios uitableview uisplitviewcontroller


    【解决方案1】:

    有很多方法可以解决这个问题。

    每次选择更改时,每个详细视图控制器都可以将其选择状态写入某个公共位置。 每当 on 获得 viewWillAppear: 它设置它的选择。

    如果您使用分段视图控制器,则在它调用的操作中,它可以从当前详细视图控制器中获取选择,更改控制器,并在新控制器中设置选择。

    或者……无限


    熟悉UITableViewController 的文档 - indexPathForSelectedRow 是您获取选定索引的方式,selectRowAtIndexPath:animated:scrollPosition: 是您在表格上设置它的方式。请注意,发送无效的 indexPath 将导致异常。如果表格大小不同,这可能是个问题。用@try 包装或在调用前检查

    【讨论】:

    • 如何获取每个detailViewController的indexPath?
    • indexPathForSelectedRow - 上面添加了详细信息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-26
    • 2017-01-26
    • 2014-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多