如何使用来自另一个视图控制器swift的用户输入创建具有表视图单元格的列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用来自另一个视图控制器swift的用户输入创建具有表视图单元格的列表相关的知识,希望对你有一定的参考价值。

我正在使用Swift制作一个有两个场景的ios应用程序。一个请求用户输入并保存在一个数组中。我正在尝试在另一个场景中创建一个包含表格视图单元格的列表,该列表包含用户单击保存按钮时保存的用户输入。

尝试在单独的文件中创建一个sharedData类,试过这个:

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
    if (segue.identifier == "segueTest") {
        var svc = segue!.destinationViewController as! goalViewController
        svc.toPass = textInput
    }
}

(均来自其他stackoverflow问题)

答案

尝试将阵列保存到NSUserDefaults中,然后在新视图中调用您在NSUserDefaults中保存的对象。

另一答案

- 使用Delegate是首选方式之一

例:

protocol PExposeArrayDelegate: class
{
   func getArrayOfItems(array: String)
}


class CustomArray
{

// delegate property to expose array to the view-controller
    internal weak var delegateForTimeLineCell: PExposeArrayDelegate?


internal func createArray()
{
    let arr = ["Vivek","India","Audi"]

     delegateForTimeLineCell.getArrayOfItems(array: arr)
}

}

现在,在要访问阵列的类中,执行以下操作:

- 符合上面定义的protocol(代表)

- 将self分配给delegate

- 实现delegate method,然后从里面访问数组。

Check the example here

以上是关于如何使用来自另一个视图控制器swift的用户输入创建具有表视图单元格的列表的主要内容,如果未能解决你的问题,请参考以下文章

如何将字符串保存到Core Data Swift

如何通过使用 swift 5 的动态集合视图从一个视图控制器移动到另一个视图控制器?

Xcode:如何创建出现在另一个视图控制器中的弹出视图控制器

在swift 3中将json id从一个表视图控制器传递到另一个表视图控制器

如何在使用当前模式打开另一个视图控制器后设置导航项的标题 - Swift

如何在 swift 4 中的另一个表视图控制器中获取该表视图单元格中的文本字段文本?