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

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

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

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

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

【问题讨论】:

    标签: arrays swift uitableview 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 操作 :)
    猜你喜欢
    • 1970-01-01
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-04
    相关资源
    最近更新 更多