【问题标题】:How can I use popup button to switch the content of tableview (swift, cocoa)?如何使用弹出按钮切换 tableview 的内容(swift,cocoa)?
【发布时间】:2015-10-13 14:49:44
【问题描述】:

我有弹出按钮和 nstableview。当我在弹出按钮中切换项目时,表格的内容应该改变。对于弹出按钮中的每个项目,我都有应该在 nstableview 中显示的数组。我猜有两个功能:

(numberOfRowsInTableView(tableView: NSTableView) -> Int
tableView(tableView: NSTableView, viewForTableColumn tableColumn:
                NSTableColumn?, row: Int) -> NSView?

我必须使用 if 条件来选择正确的数组。问题是如果条件指示弹出项,我必须在这些中写什么?或者,我是不是走错了方向?

【问题讨论】:

  • 试图让问题更具可读性和格式

标签: swift cocoa nstableview nspopupbutton


【解决方案1】:

最终我找到了解决方案。我希望它对像我这样的初学者有用。我的代码如下。

 var selectedContentOfTable = Int()

 @IBAction func chooseContentOfTable(sender: AnyObject)
 {
    selectedContentOfTable = (sender as! NSPopUpButton).indexOfSelectedItem
    myTable.reloadData()
 }

 func numberOfRowsInTableView(tableView: NSTableView) -> Int
 {
     ...
     if  selectedContentOfTable == 0 //for upper popup item 
     {
         //your code for particular tableview content
     }else if selectedContentOfTable == 1 //for next down popup item
     {
         //your code for particular tableview content 
     }
     ...
 }

 func tableView(tableView: NSTableView, viewForTableColumn tableColumn:
            NSTableColumn?, row: Int) -> NSView?
 {
     ...
     if  selectedContentOfTable == 0 //for upper popup item 
     {
         //your code for particular tableview content
     }else if selectedContentOfTable == 1 //for next down popup item
     {
        //your code for particular tableview content
     }
     ...
 }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-26
    • 2015-01-21
    相关资源
    最近更新 更多