Как мне сделать обновление NSCollectionView
, чтобы показать текущий выбранный элемент, используя NSBox
? Отображение выделения в списке кажется базовым, но у меня возникают все проблемы с этим.
Я прочитал этот вопрос , а также посмотрел пример кода от Apple. Кажется, есть несколько способов сделать это.
- Использование подклассов
NSCollectionViewItem
и специального "представления прототипа".
- Использование
NSBox
.
Я хочу использовать способ NSBox
, поскольку он кажется простым и также используется в официальном примере кода.
Очевидно, это сделано, как описано в следующей цитате alternegro :
Если в качестве выделения будет достаточно другого цвета фона, вы можете
просто используйте NSBox в качестве корневого элемента для представления элемента коллекции.
Заполните NSBox выбранным цветом. Установите NSBox
Кастом, так что заливка будет работать. Установите NSBox на прозрачный.
Привязать атрибут прозрачности NSBox к выбранному атрибуту
владельца файла (элемент коллекции) Установите преобразователь значения для
прозрачное связывание с NSNegateBoolean.
Я застрял в самой первой части: «использовать NSBox в качестве корневого элемента для представления вашей коллекции (sic)». Я попытался изменить «Пользовательский класс» на FoobarBox
, который наследуется от NSBox
, но, похоже, это не помогает, так как я не могу изменить цвет фона на синий и не могу привязать прозрачность. Будем благодарны за любые указания о том, как сделать выбор в моем NSCollectionVuew.