Попытка добавить NSView к существующему NSView, но я неудачно по какой-то странной причине. Я делаю это:NSView невидимый, если я не переопределяю drawRect, а затем он обрезается, даже если setMasksToBounds NO на уровне супервизора
_resizeView = [[NSView alloc] initWithFrame:NSMakeRect(0, 0, 10, 10)];
[_resizeView.layer setBorderWidth:2];
[_resizeView.layer setBorderColor:[NSColor purpleColor].CGColor];
[_resizeView.layer setBackgroundColor:[NSColor blackColor].CGColor];
[_resizeView setAutoresizingMask:NSViewNotSizable | NSViewMinXMargin | NSViewMaxYMargin];
[self addSubview:_resizeView];
Пробовал удалить маску авторезистировки, но это все еще не сработало. Итак, я изменил его с NSView на NSButton, и это волшебным образом работает, и вид виден.
Создал собственный подкласс NSView, где я переопределяю drawRect, а затем он становится видимым, но только для путей, которые я нарисовал там (да, я называю super drawRect). Что здесь происходит?
Итак, я понял, что в основном я делаю коробку с рамкой (цвет фона только для тестирования). Я мог бы просто продолжать использовать мой подкласс, но потом я попытаюсь добавить это в угол моего существующего вида , слегка приклеиваясь, и он замаскирован, даже если у меня установлено setMasksToBounds для NO для основного слоя представления, к которому я добавляю его.
Я схожу с ума здесь! Почему ничто из этого не работает так, как ожидалось?
setWantsLayer: Да исправлена проблема с тем, что она не видна. Тем не менее опыт обрезки. –