【问题标题】:How to perform a segue between a separated UITableViewCell and another view如何在分离的 UITableViewCell 和另一个视图之间执行 segue
【发布时间】:2012-07-12 08:56:18
【问题描述】:

这就是我所拥有的:

带有 UIViewController 的 Storyboard,其中包含 UITableView。在它旁边,我有一个UITabBarController 处理其他 5 个视图。

我在ViewControllerTabBarController 之间定义了一个“通用”segue,以便之后能够调用它。

这是我的故事板的子视图:

对于我的 UITableView,我在单独的 .xib 文件中创建了两个自定义 UITableViewCells

当我单击其中一个单元格时,我真的不知道如何将我的应用程序告诉performSegueWithIdentifier:,因为我无法在 IB 中直接在单元格和目标视图之间设置 segue。

谁能给我一些关于如何正确操作的提示?

【问题讨论】:

    标签: iphone ios xcode uitableview tableview


    【解决方案1】:

    tableView:didSelectRowAtIndexPath:(或类似方法)的实现中,您可以通过调用-[UIViewController performSegueWithIdentifier:sender:] 来告诉视图控制器使用您之前创建的通用segue。您可以在情节提要的 segue 上设置标识符。

    对于发送者,你可以传递 UITableViewCell 实例,或者你想要传递的任何其他对象。这将在视图控制器调用您的prepareForSegue:sender: 方法时使用,并且是确定用户点击什么导致segue 的好方法。然后你可以使用这个发送者/上下文准备下一个视图控制器。

    【讨论】:

    • 那么我应该将哪个发件人传递给此方法?
    • 你可以使用 UITableViewCell 实例,或者你想要传递的任何其他对象。这将在视图控制器调用您的 prepareForSegue:sender: 方法时使用,并且是确定用户点击什么导致转场的好方法。
    • 你需要实现 UITableViewDelegate。然后,当用户点击该单元格时,您将收到tableView:didSelectRowAtIndexPath:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 1970-01-01
    • 2016-09-20
    • 2019-02-02
    • 2015-06-25
    相关资源
    最近更新 更多