如何使用两个不同的单元格在tableview中添加raw

时间:2018-04-20 22:13:21

标签: ios swift append tableview cell

我做了什么:

我有两个文本字段(名称 - 链接),我希望用户在填写文本字段并按下添加按钮时,新数据输入到tableview ..

我做到了!!

我的目标是:

当我按下添加按钮时我只能定位一个单元格如何添加两个数据(链接名称)

在此代码中

 @IBAction func add(_ sender: Any) {


    data.append("\(link.text!)")
    tableView.beginUpdates()
    tableView.insertRows(at: [IndexPath(row: data.count-1, section: 0)], with: .automatic)
    tableView.endUpdates()

}

如何将link.text和name.text设置在一起

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return data.count

}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

 let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TableViewCell
   cell.cell4Name.text = data[indexPath.row]
    cell.cell4Link.text = data[indexPath.row]

    return cell
}


@IBAction func add(_ sender: Any) {


    data.append("\(link.text!)")
    tableView.beginUpdates()
    tableView.insertRows(at: [IndexPath(row: data.count-1, section: 0)], with: .automatic)
    tableView.endUpdates()

}

1 个答案:

答案 0 :(得分:2)

您可以为名称和链接定义2个数组。

var names = [String]()
var links = [STring]()

然后将添加方法改为此:

@IBAction func add(_ sender: Any) {
    names.append("\(nameTextField.text!)")
    links.append("\(linkTextField.text!)")
    tableView.reloadData()
}

你也应该对 tableView 代码

进行一些更改
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return names.count //or links.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TableViewCell
    cell.cell4Name.text = names[indexPath.row]
    cell.cell4Link.text = links[indexPath.row]

    return cell
}