我正在尝试创建一个应用程序,其中有一个标签,当用户按下按钮时,该标签会从UITextField获取其文本。现在,我添加了另一个按钮和一个表格视图,我希望能够使用相同的秒表圈机制将“标签”文本“保存”到表格单元格中。 因此,要清楚一点,我希望按钮每次将标签的文本传输到表格视图单元格时。
答案 0 :(得分:-1)
在保存按钮之后,您需要将文本存储在某处并重新加载表格。 (或将其插入动画中)
class ViewController: UIViewController {
@IBOutlet private var textField: UITextField!
@IBOutlet private var tableView: UITableView!
var texts: [String] = [] {
didSet { tableView.reloadData() }
}
override func viewDidLoad() {
super.viewDidLoad()
tableView.register(UITableViewCell.self, forCellReuseIdentifier: "SimpleCell")
tableView.dataSource = self
}
@IBAction func saveButtonTapped(_ sender: UIButton) {
guard let newText = textField.text else { return }
self.texts.append(newText)
}
}
在tableView
的dataSource方法中:
extension ViewController: UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return texts.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "SimpleCell", for: indexPath)!
cell.textLabel?.text = texts[indexPath.row]
return cell
}
}