Можно ли изменить размеры меток кнопок NSTabViewItem?

Если я добавлю несколько NSTabViewItems в NSTabViewController, кнопки элемента представления вкладки будут иметь размер в соответствии с длиной текста метки. С разными текстами для каждой метки это может привести к тому, что кнопки NSTabViewItem будут иметь совершенно разные размеры.

Есть ли способ установить размеры / ширину кнопки для определенного размера в IB? Это может быть сделано динамически в коде?

1 ответ

Я не думаю, что это можно сделать в Интерфейсном Разработчике, но вы должны иметь возможность подкласса NSTabViewItem и переопределить - (NSSize)sizeOfLabel:(BOOL)computeMin чтобы вернуть желаемое значение. Больше информации здесь.

Например, если вы хотите, чтобы все NSTabViewItem имели одинаковую ширину 100 пт:

@interface MyTabViewItem : NSTabViewItem
@end

@implementation MyTabViewItem
- (NSSize)sizeOfLabel:(BOOL)computeMin {

    NSSize size = [super sizeOfLabel:computeMin];
    size.width = 100.0
    return size;

}
@end

и, конечно же, вам нужно установить элементы вашего NSTabView в качестве экземпляра MyTabViewItem (либо в IB, либо при динамическом добавлении их в ваш код).

Другие вопросы по тегам