我想访问另一个类中的tableview指定的数组

时间:2016-01-18 19:02:47

标签: arrays swift uitableview

如图所示,我试图在tableview函数之外重新声明数组。我也试过从我希望数组进入的类中调用ViewController.tableView()。我想我需要知道的是如何将数组从tableview中取出来。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier ("BasicCell")

    let keyTitle = keys[indexPath.row].keyTitle
    let keyItself = keys[indexPath.row].keyItself

    var keyArray = []
    keyArray = keyItself

    cell.textLabel?.text = keyTitle

    return cell
}

var theKey: Array = keyItself

2 个答案:

答案 0 :(得分:0)

ViewController确实引用了类,而theKey属性确实属于类ViewController的实例。

因此,要访问您的数组,您需要对ViewController类的引用。

像这样的东西

let viewController: ViewController = ... // get your instance somehow
viewController.tableView()

答案 1 :(得分:0)

我恳求你,不要走那条路!我以前见过很多次,它几乎总是在灾难中结束。

视图控制器用于管理视图并通过通知数据模型来响应用户输入的交互,并管理数据模型的更改并将其显示给用户。存储数组

如果您需要由多个视图控制器共享的数据,则有多个选项。最丑陋,最简单的方法是给你的AppDelegate一个可以保存这些数据的数组属性。

即使仅仅列举其他选项也超出了本问题的范围。