从表格视图发送数据到下拉菜单

时间:2019-01-08 08:42:55

标签: swift core-data tableview

我有一个选项卡控制器视图,在其中输入平面类型和注册,并将其另存为表格视图中的单元格。

在另一个视图上,我创建了一个下拉菜单,但我希望能够访问飞机类型并重新输入(我已使用核心数据进行保存),并将其作为下拉菜单中的单元格再次显示一个表格视图。

当前,填充下拉菜单表视图单元格的信息只是我定义并放入信息中的一个数组,但我希望它能够从其他视图获取带有飞机类型并重新定位的信息在牢房中。

因此,在另一个视图中,具有类型和rego的单元格将出现在下拉菜单中,并将飞机显示为要按下的选项。

这是我用来在单独的选项卡控制器视图中保存平面信息的代码。

var planeArray:[Planes] = []

var context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext

func savePlane(alert: UIAlertAction) {

    if typeField?.text != "" || regoField?.text != "" {

        let newLog = NSEntityDescription.insertNewObject(forEntityName: "Planes", into: context)
        newLog.setValue(self.typeField?.text, forKey: "type")
        newLog.setValue(self.regoField?.text, forKey: "rego")

        do{
            try context.save()
        }
        catch {
            print(error)
        }

        //Making the table update itself when user logs the plane
        self.fetchData()
        self.tableView.reloadData()

    }
    print("Plane Saved")
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! CustomTableViewCell
    let plane = planeArray[indexPath.row]
    cell.typeAnswer.text = plane.type
    cell.regoAnswer.text = plane.rego
    return cell
}

我想知道如何将每一行的类型和位置重新显示为另一个vc的下拉菜单中的信息,以便如果用户添加更多飞机,它们将出现在vc中,以及删除,它们将从下拉菜单中获取。

当前,这是下拉菜单中有关单元格内容的功能。 dropDownOptions是信息所在的数组,因此我将如何获取该类型并在此数组中进行重定位,以便将其作为选项显示在下拉菜单中。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = UITableViewCell() 
    cell.backgroundColor = UIColor.init(fromHexCode: "4FB7F1")
    cell.textLabel?.text = dropDownOptions[indexPath.row]
    return cell
}

0 个答案:

没有答案