从UITableViewCell到UIViewController的segue无法正常工作(未进行segue的准备)

时间:2019-01-04 00:42:17

标签: ios swift uitableview uiviewcontroller

我有一种情况,我需要从不同的选项卡栏控制器,导航控制器显示一个特定的UIViewController,并通过按表视图单元格来执行操作,并知道从哪里显示它,并根据它运行一些代码。因此,我认为使用Storyboard Segue是一个不错的主意,但甚至不能调用为segue功能做准备。所有使用show segue标识符的都已命名,所以我不知道我在做什么错。

但是,如果有人想说实现这种方式的任何其他方式,我想知道。

https://i.imgur.com/ZSkta3p.jpg

我正在尝试通过Storyboard引用来做到这一点(只是因为看起来在Storyboard中导航更容易),但是直接连接到UIViewController也不起作用。

我正在使用Xcode 10.1和Swift 4.2.1

 import UIKit

 class TestsController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
    }


    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        print("I'm working!'")
        if segue.identifier == "Test1" {
            print("test 1")
        } else if segue.identifier == "Test2" {
            print("test 2")
        }
    }

}

1 个答案:

答案 0 :(得分:0)

静态表只能位于UITableViewController内,因此请更改

class TestsController: UITableViewController {

然后在IB中分配此类,并删除UITableView |的所有实现。 UITableViewDelegate | UITableViewDataSource

然后准备工作就可以了,请看这个Demo

相关问题