2010-11-15 9 views
0

Я пытаюсь сделать selectable NSToolbarItems. Я подключил все правильно в IB, но toolbarSelectableItemIdentifiers: не работает. Он не вызван. Делегат является владельцем файла (подкласс NSWindowController), а панель инструментов находится на листе. Вот мой код:toolbarSelectableItemIdentifiers: не называется

// TOOLBAR DLGT 
- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar { 
    NSLog(@"Foo"); 
    NSMutableArray *arr = [[NSMutableArray alloc] init]; 
    for (NSToolbarItem *item in [toolbar items]) { 
    [arr addObject:[item itemIdentifier]]; 
    } 
    return [arr autorelease]; 
} 

Скриншот:
screenshot

Можете ли вы помочь мне, пожалуйста?


Нет, я не хочу использовать BWToolkit.

+2

В качестве стороннего, если вы не планируете добавлять условие внутри этого цикла позже, вы можете заменить весь цикл и изменяемый массив на 'return [[itemsbar items] valueForKey: @" itemIdentifier "];'. NSArray реализует 'valueForKey:', возвращая массив значений каждого содержащегося объекта для ключа. –

ответ

0

Вы положительный выход делегата панели инструментов указывает на класс (или его экземпляр), который вы думаете, что он делает? Существуют ли какие-либо другие методы делегирования NSToolbar там (достаточно легко проверить)?