我做了什么:
我有两个文本字段(名称 - 链接),我希望用户在填写文本字段并按下添加按钮时,新数据输入到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()
}
答案 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
}