如何清除NSTableView的内容,并在单击Swift中的按钮时再次重新加载数据

时间:2015-08-17 09:49:36

标签: macos swift cocoa nstableview

我有一个NSTableView,我使用pList填充。我有一个清晰的按钮来清除表的内容。

代码如下

 var dataArray: NSMutableArray = [];

    @IBAction func clearButton(sender: AnyObject) {        
        dataArray.removeAllObjects()
        tableView.reloadData()
    }

现在这个工作正常。但我无法在另一个按钮点击时重新加载数据。数据被清除并且没有被加载。

2 个答案:

答案 0 :(得分:1)

调用该函数时,您可以检查dataarray的长度,并相应地重新加载表数据。

@IBAction func clearButton(sender: AnyObject) {  
          if dataArray.count>0 {
            dataArray.removeAllObjects()
            tableView.reloadData()
          }
          else{
                // Code to insert element into dataArray
            tableView.reloadData()
          }
     }

答案 1 :(得分:1)

我得到了解决问题的方法,而不是删除所有项目,我为dataArray分配了一个空数组。这很有效。

@IBAction func clearButton(sender: AnyObject) {        
        dataArray = []
        tableView.reloadData()
    }