2015-04-09 5 views
1

То, что я хотел бы иметь, заключается в том, что при выборе строки в представлении таблицы на основе изображения образы (или изображения кнопок) инвертируются, как в Safari:Образ кнопки с инвертированной строкой в ​​выбранной таблице просмотра таблицы

Inverted button image in selected table view row

у меня уже есть кнопка с изображением NSStopProgressFreestandingTemplate (Stop progress image), но ничего не происходит, когда выбрана строка. Текст правильно становится белым.

ответ

0

Оказалось, что эта проблема вызвана NSTableCellView, имеющим уровень активной анимации. (Забавно знать, сколько проблем можно решить, отключив CALayer.) Я бы никогда не подумал об этом, поэтому мне пришлось сравнить исходный код «багги» .xib-файла и нового работающего.

0

Какой стиль: NSButton Вы используете? Я просто попробовал добавить один в мой проект на основе NSTableView, я установил его в стиле «Inline» с изображением NSStopProgressFreestandingTemplate, и он правильно превращается в белый текст при выборе строки таблицы.

+0

Спасибо за помощь! Я заметил, что при его выборе что-то меняется, а атрибут «Bordered» включен, но без него ничего. И с границей это выглядит не очень хорошо. – Nickkk

+0

@Nickkk Это странно. Я не проверял атрибут Bordered, когда я его пробовал, и он работал нормально. Пара вопросов: вы используете стиль кнопки «Inline»? Какой тип кнопки вы используете, и устанавливаете ли вы изображение через файл .xib или через код? –

+0

Я просто перетащил кнопку Inline в мой табличный вид и снял флажок атрибута Border, поэтому я оставил стиль кнопки по умолчанию («Momentary Push In»). Изображение также задается в файле .xib. Я также заметил, что когда я нажимаю кнопку и ее строка выбрана, изображение инвертируется после того, как мышь снова встает, но отмена выбора и выбор строки снова возвращает ее обратно, чтобы не инвертироваться. – Nickkk

Смежные вопросы