如何创建一个按钮,在ViewController中的TableView中添加带有数组数据的新行(它们不是单独的视图控制器!)?

时间:2017-03-26 10:25:02

标签: arrays swift uitableview

我正在使用swift制作一款游戏,我想创造一个答案的历史。但问题是当我点击“addResult”按钮时Xcode告诉thread1 exc_bad_instruction。这是代码。在启动模拟器之前,甚至在启动之后都没有显示错误,但是,当我单击“addResult”按钮时,应用程序崩溃。

class FirstViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

    @IBOutlet weak var choice1Text: UITextField!
    @IBOutlet weak var resultLabel: UILabel!
    @IBOutlet weak var choice2Text: UITextField!
    @IBOutlet var mytableView: UITableView! {
        didSet {
            mytableView.dataSource = self
        }
    }

    var items: [ResultlistItem]

    required init?(coder aDecoder: NSCoder) {
        items = [ResultlistItem]()
        let row0item = ResultlistItem()
        row0item.text = "Yes"
        items.append(row0item)
        let row1item = ResultlistItem()
        row1item.text = "No"
        items.append(row1item)
        super.init(coder: aDecoder)
    }
}
    @IBAction func addResult(sender: AnyObject) {
    let item = ResultlistItem()
        item.text = "new one"
        items.append(item)

        mytableView.reloadData()

    }



 func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return items.count
    }
 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "Resultitem", for: indexPath)

        let item = items[indexPath.row]

        configureText(for: cell, with: item)

        return cell
    }

func configureText(for cell: UITableViewCell, with item: ResultlistItem) {
    let label = cell.viewWithTag(1000) as! UILabel
    label.text = item.text


}

0 个答案:

没有答案