Объект пользовательского интерфейса невидим после переключения между вкладками

Мое приложение имеет окно настроек с панелью инструментов. Его вкладка настроек представляет собой отдельный объект NSView. Когда я помещаю стандартные кнопки, поля и т. Д. В каждое представление, переключение между вкладками работает замечательно, но когда я добавляю пользовательские блоки или представления, пользовательские объекты становятся невидимыми после переключения между вкладками.

Как это исправить?

Обратите внимание, что я использую метод drawLayer: в каждом нестандартном объекте. Я отмечаю флажок "слой" в IB для суперпредставления.

1 ответ

Вы не должны использовать неявный слой в представлении со слоем для создания пользовательского рисования. Хотя иногда это работает, это не поддерживается.

Вместо этого вы должны создать свой собственный CALayer объект и добавить его к неявному слою представления, используя [self.layer addSublayer:yourCustomLayer], Затем вы должны установить свой объект в качестве делегата слоя и реализовать drawLayer:inContext: сделать свой собственный рисунок.

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