首页 > 解决方案 > 如何将一个数组添加到另一个数组

问题描述

我正在开发一个应用程序,它在 FirstViewController 中有一个 textView,在 SecondViewController 中有一个 tableView。在应用程序中,用户使用 textView 键入字符串,然后通过按下按钮(由 IBAction buttonIsPressed 指示)将其转换为数组,并在 UserDefaults 的帮助下传输到下一个视图控制器中的 tableView。现在,我希望代码能够在每次用户在 textView 中键入字符串时将所有字符串附加到一个数组中。我已经尝试了我在互联网上找到的每一种方法,将字符串或数组附加到一个数组中,但它们都不起作用。如果你们中的一些人能帮助我,我将不胜感激。这是代码:

@IBAction func buttonIsPressed(_ sender: Any) {
    var newitems = textField.text!.components(separatedBy: CharacterSet(charactersIn: ", []()\n.:"))
    print(newitems)
        if newitems.contains(""){
            newitems.removeAll { $0 == ""}
            UserDefaults.standard.set(newitems, forKey: "items")
            print(newitems)
        }else{
            let newitems = textField.text!.components(separatedBy: CharacterSet(charactersIn: ", []()\n.:"))
            UserDefaults.standard.set(newitems, forKey: "items")
        }

        textField.text = ""

        }

标签: iosarraysswift

解决方案


第一:您不应该使用 userdefaults 进行临时存储

UserDefaults.standard.set(newitems, forKey: "items")

除非你保存它们以备下次启动

第二:在源vc里面创建一个数组,比如

var arr = [String]()

并附加最新的内容

arr += newitems 

然后传递arr到目标vc


推荐阅读