當表格視圖中的一行被選中時,如何觸發一個方法?當在表格視圖中選擇一行時,觸發一個方法
4
A
回答
6
您需要使用NSTableViewDelegate
來控制當您使用NSTableView
時發生的情況。如果您持有該表相關的視圖被命名爲MyViewController
,你的界面(.h
)文件應該這樣開始:
@interface MyViewController : NSObject <NSTableViewDelegate> {
,然後在執行(.m
)文件中,有這樣的:
- (id)init {
[super init];
myTableView.delegate = self;
return self;
}
- (BOOL)tableView:(NSTableView *)tableView shouldSelectRow:(NSInteger)rowIndex {
NSLog(@"%i tapped!", rowIndex);
return YES;
}
-5
我錯過了什麼嗎?只需在以下代理方法中調用它即可:didSelectRowAtIndexPath
2
以下鏈接指向NSTableViewDelegate docs。
+0
NSTableViewSelectionDidChangeNotification? – Joshua 2009-12-16 18:41:27
+0
這是一個通知名稱(這是爲什麼它以「通知」結尾)。觀察通知是一種方式,但作爲代表更容易。 – 2009-12-16 23:19:56
相關問題
- 1. 編輯表格視圖中的行時觸發方法
- 2. 當我選擇表中的一行時,是否有一種方法可以彈出一個表視圖?
- 3. iPhone:當選中一個表格單元格時,更改視圖
- 4. MonoTouch:當在TableView中選擇一行時,DataSource.RowSelected()不會觸發
- 5. 在表格視圖中選擇某個選擇中的某一行
- 6. Swift將選擇器觸發到另一個視圖的視圖
- 7. 調用函數,然後在視圖中選擇一個表格
- 8. 塞格僅在選擇另一個表格行時執行
- 9. 一個選擇只在列表視圖
- 10. WPF ListView無法觸發選擇當只有一行時發生改變
- 11. 當您取消選擇單元格時,集合視圖中的didDeselectItemAtIndexPath未觸發
- 12. 從表格中選擇一行從其他表格中選擇一個字段
- 13. 從同一表中觸發選擇
- 14. 當點擊另一個表格時取消選擇表格視圖單元格中的按鈕
- 15. 當從列表中選擇一個項目時選擇一個單選按鈕
- 16. 推視圖控制器從表視圖中選擇一行
- 17. 如何在網格視圖中取消選擇前一行?
- 18. MVC:在運行時選擇一個視圖
- 19. 在另一個視圖中顯示在UIPickerView中選擇的行
- 20. 選擇行的表格視圖功能
- 21. 使用執行選擇器方法一個接一個地調用多個視圖控制器作爲視圖
- 22. jquery - 當元素滾動到視圖時觸發ajax方法
- 23. 如何在列表視圖中選擇一行只按下一個ImageView
- 24. 如何在列表視圖(Android)中觸發一個按鈕?
- 25. asp.net從網格視圖中選擇一個複選框
- 26. 當選擇其中一個時,更改其他表格視圖單元格的數據
- 27. 當在表格中選擇一行時更改文本框中的文本
- 28. 以編程方式選擇列表視圖的一行
- 29. 選擇一個表格視圖細胞編程:selectRowAtIndexPath VS的setSelected
- 30. 當在GridView/ListView中選擇一個單元格時,它也會選擇另一個單元格
我不知道我是否做對或錯(因爲網上很少有令人困惑的教程可用),但上面的解決方案適用於我:) 謝謝! – 2013-11-23 07:45:36
我已經upvoted,因爲這會工作,但我認爲更好的方法是使用'tableViewSelectionDidChange:'因爲你使用的方法真的有問問權限,如果允許選擇更改。 – JeremyP 2013-12-30 14:59:11