Вкладки на панели инспектора в стиле iWork

как добиться того, чтобы кнопки вкладок выглядели так, как они отображаются в iWork '09 Inspector NSPanel?

Самое близкое, что я мог получить, это NSSegmentedControl в стиле "Маленький квадрат". К сожалению, по крайней мере, в Snow Leopard это приводит к серому выделению вместо синего.

Есть идеи, что Apple сделала, чтобы получить голубовато-голубой выбор в различных iWork '09 Inspector NSPanel?


person Ivan Vučica    schedule 07.01.2012    source источник


Ответы (2)


Верхняя панель значков — это Radio Group, которая на самом деле представляет собой NSMatrix, заполненную NSButtonCells. Вы можете проверить это с помощью приложения UIElementInspector.app, которое представляет собой пример кода, поставляемый с XCode.

Выбранная ячейка отображает свое альтернативное изображение, другие ячейки отображают свое изображение.

person alecail    schedule 16.09.2012
comment
Именно так я делал это полгода назад: матрица с ячейками-кнопками, которая при нажатии меняет активную вкладку в представлении вкладок. Я не использую альтернативные изображения, но я бы сделал это, если бы мне это было нужно. Спасибо! - person Ivan Vučica; 17.09.2012

Кнопки вкладки инспектора iWork используют изображения для своего внешнего вида. Вы можете увидеть изображения, если Показать содержимое пакета в одном из пакетов приложения и посмотреть в папке Resources.

Чтобы воспроизвести это, вы можете использовать NSSegmentedControl с собственным подклассом NSSegmentedCell, который рисует изображения.

person Rob Keniger    schedule 08.01.2012
comment
Как бы это ни было шокирующе, вы правы. Очень странно, что они не предоставляют стандартный способ рисования этого сегментированного элемента управления. - person Ivan Vučica; 08.01.2012