单击按钮时更改 tableView 的标签文本 Swift

Change label text of tableView on button click Swift

我做了一个简单的练习tableView和Singletons的app。我是 swift 的新手,所以我希望能在这方面得到一些快速帮助。想做的事情很简单,暂时想不出来

import UIKit

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource{

    var tableView = UITableView()
    let names = Singleton.shared.nameArray
    
    override func viewDidLoad() {
        super.viewDidLoad()
        view.addSubview(tableView)
        tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
        tableView.delegate = self
        tableView.dataSource = self
    }
    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        tableView.frame = .init(x: 0, y: 0, width: 414, height: 260)
    }
    
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return names.count
    }
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
        let name = names[indexPath.row]
        cell.textLabel?.text = "cell \(indexPath.row + 1)"
        return cell
    }
    @IBAction func didPressButton(_ sender: Any) {
           
       }
}

基本上我希望 tableView 标签更改为我在单击按钮后创建的这个 name 常量。 抱歉,如果我没有在问题中说清楚所有内容,我希望您能理解并能够帮助我。很难解释代码,因为我是 swift 的新手,英语不是我的母语。

已编辑以澄清一些问题。

加入ViewController:

private var areNamesVisible = false

@IBAction func didPressButton(_ sender: Any) {
    areNamesVisible.toggle()
    tableView.reloadData()
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
    let name = names[indexPath.row]
    cell.textLabel?.text = areNamesVisible ? name : "cell \(indexPath.row + 1)"
    return cell
}