У меня есть пользовательский NSTableHeaderView пользовательских объектов NSTableHeaderCell, которые рисуют пользовательский заголовок. Проблема, с которой я сталкиваюсь, заключается в том, что когда отображаются полосы NSScroller, заголовок, нарисованный над скроллером, является значением по умолчанию, а не моим пользовательским рисунком.
NSTableViewHeaderView не рисует поверх NSScroller
Ответы (2)
Оказывается, представление, которое управляет этим разделом (над скроллером, справа от заголовка), называется угловым представлением, и NSTableView имеет метод -setCornerView:(NSView *)view для его установки. Я исправил свою проблему, создав подкласс NSView и используя пользовательский рисунок для рисования углового изображения в представлении, а затем установив этот подкласс с помощью ранее упомянутого метода.
Mac Mojave, вид слева
Недавно, предоставляя поддержку для одного из моих приложений на Mac Mojave, я обнаружил виновника за верхним левым угловым представлением табличного представления. это также можно удалить, если мы установим угловой вид из xib, как показано ниже.
Эта проблема возникает, если для свойства "Автоматически скрывать прокрутку" задано значение "ДА" и не задан вид в углу
Решение: