プログラムで NSToolbarItem を作成していますが、選択できません。「選択可能」オプションをチェックするオプションがあるため、インターフェースビルダーから追加されたものは選択可能です。しかし、NSToolbarItem クラスには setSelectable メソッドがありません。
NSToolbarDelegateプロトコルが実装され、toolbarSelectableItemIdentifiersメソッドが呼び出されますが、 toolbarDefaultItemIdentifiersメソッドが返すのと同じ識別子を返した後も、それらは無効のままです。
OS X 10.10 で開発、10.7 をターゲット
編集:
- (NSArray *) toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar{
NSMutableArray* ids = [[NSMutableArray alloc] init];
for(NSToolbarItem* item in [_my_toolbar items]){
[ids addObject:item.itemIdentifier];
}
NSLog(@"Selectable ids are %@", ids);
return ids;
}
これが私の実装です。(すべての項目が選択可能である必要があります);