Swift:数组、文本字段和 UITableView

Posted

技术标签:

【中文标题】Swift:数组、文本字段和 UITableView【英文标题】:Swift: array, textfields and UITableView 【发布时间】:2016-01-17 22:15:32 【问题描述】:

我正在尝试创建一个基于字符串数组显示表格视图的应用程序。

我有一个视图控制器和一个较小的内容视图。在视图控制器中有一个文本字段和一个按钮,应该将写入的文本保存在一个数组中并在表格视图控制器中显示它。以及将其嵌入到内容视图中。

我不知道如何保存写入的文本并将其添加到数组中,可能使用append

如何在表格视图中显示数组并将数组保存在 NSUserDefaults 中?

【问题讨论】:

【参考方案1】:

您可以通过如下代码将数组保存在用户默认值中:

var arr = [1,2,3,4]
NSUserDefaults.standardUserDefaults().setObject(arr, forKey: "myArray")

但请记住,如果您想接收返回的数组,则在此示例中您必须将 AnyObject 转换为 [Int]。

如果你要将数据保存在tableview中,只需实现DataSource协议,当你将数据放入tableview中的数组时,你可以定义你的表应该有多少行

func numberOfRowsInSection(_ section: Int) -> Int

方法(返回array.count)。最后一步是调用 reloadData() 方法。有关更多详细信息,请参阅文档:https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableView_Class/#//apple_ref/occ/instm/UITableView/numberOfRowsInSection:

编辑: 你需要一个字符串数组。

var strs = [String]()
strs.append(someTextField.text) 

TextFields 具有从文本字段返回文本的属性“文本”:-)。

【讨论】:

感谢您的回答,但我没有得到任何东西。如何将文本字段的文本保存在数组中? 好的,谢谢,稍后我会尝试,如果有问题我会告诉你 它不起作用,因为文本字段和数组在不同的视图控制器中,我不能在类之前声明文本字段。 因此,您必须创建包含您的 tableview 的 ViewController 对象并通过属性传递数组:)。最后一步是执行 pushViewController 操作 :)

以上是关于Swift:数组、文本字段和 UITableView的主要内容,如果未能解决你的问题,请参考以下文章

swift4中的UITextfield验证 - 动态单元格

如何使用文本字段将数字输入数组(swift3)

如何在 iOS swift 中使用文本字段过滤日期数组?

如何将第二个viewcontroller文本字段值传递给第一个viewcontroller数组并在swift4中点击按钮时关闭

Swift 以编程方式设置文本字段的占位符

使用Swift IOS获取推文