2016-07-12 12 views
0

macOSの環境は非常に新しいです。この方法を使用してNSTableViewのクリックが検出されました。うまくと正常に動作しますが、問題は私が初めてでクリックしたときのtableViewは、このメソッドを呼び出すことであると私は、行の2番目の時間をクリックすると、対応するアクションを実行NSTableViewの行を2回目にクリックできません

func tableView(tableView: NSTableView, shouldSelectRow row: Int) -> Bool { 
} 

、このメソッドはなっていませんと呼ばれる。何か起きて奇妙なこと。

皆さんのご意見はありますか?行の選択を解除する必要がありますか?私は行の選択を解除し、このメソッドですべての行の選択を解除しようとしましたが、それは私を助けませんでした。私はあなたがあなたの関数でfalseを返すことがview based tableView

+0

行を選択する必要がありますか?もしそうでなければ、関数から 'false'を返すことができます。 –

+0

実際には、このメソッドは、 'true'または' false'を返すことによって選択できる行をテーブルビューに伝えるために使用されます。 – vadian

+0

したがって、どのメソッドをtableView行のクリックを検出するために使用する必要がありますが、私はその行を選択したくありません。 –

答えて

0

を使用しています:

func tableView(tableView: NSTableView, shouldSelectRow row: Int) -> Bool { 
    print("Should select row: \(row)") 
    return false 
} 

this answerで、よりエレガントかつ正確なソリューションがあります。それはもっと仕事ですが、私はそうすることをお勧めします。

関連する問題