Документация для NSPopUpButton гласит:
Объект NSPopUpButton использует объект NSPopUpButtonCell для реализации своего пользовательского интерфейса.
Я получил новый класс от NSPopUpButtonCell
, который реализует drawBorderAndBackgroundWithFrame:inView:
для достижения пользовательского рисования. Кроме того, я получил новый класс из NSPopUpButton
и использую cellClass
, чтобы использовать мой производный класс для него. (т.е. я не работаю через конструктор интерфейсов.)
Однако, с появлением бета-версии macOS 10.14, эта процедура больше не вызывается, и я наблюдаю "нормальный" (т.е. не настроенный) рисунок.
Благодаря ответу @ Marc T. я (как мне кажется) смог локализовать проблему с тем фактом, что ячейка, очевидно, вызывает drawBorderAndBackgroundWithFrame:inView:
, только если drawInteriorWithFrame:inView:
реализован в производная клетка.
Я не смог найти надежной документации по этому Есть ли?