在我的應用程序,我需要跟蹤的NSBrowser選擇的最後一個項目。以下設置NS瀏覽器:
- (void)awakeFromNib
{
[browser setDelegate:self];
[browser setTarget:self];
[browser setAction:@selector(browserCellSelected:)];
[browser setSendsActionOnArrowKeys:YES];
}
以下處理單元格,因爲它們被選中。這適用於鼠標或鍵盤所做的選擇。如果你的應用程序允許多個選擇,你的動作方法將需要處理。
- (void)browserCellSelected:(id)sender
{
NSIndexPath *indexPath = [browser selectionIndexPath];
MyItem *myItem = [browser itemAtIndexPath:indexPath];
if (myItem)
{
NSLog(@"Selected Item: %@", myItem.name);
}
}
BTW,方案的選擇將不發射browserCellSelected:方法和用戶點擊就無法調用該委託的瀏覽器:selectRow:inColumn:方法。