это будет трудно объяснить. Я изменяю образец кода InfoBarStackView от Apple. Проблема, с которой я сталкиваюсь, заключается в том, что это выглядит так, как будто одно из подпредставлений делится на два с помощью NSStackview и отображается отдельно.
В моем примере я добавляю 4 подвида в представление стека, каждый точно такого же размера (и тот же код). Затем он помещается в NSScrollView. (Раскладка вертикальная.)
Когда приложение запущено, я вижу самые первые два подвида. Когда я прокручиваю вниз, начинаются странности. Последующий вид визуализируется, где визуализируется нижняя часть, затем визуализируется верхняя часть. Если размер по вертикали составляет 272 пикселя, нижняя часть отображается как 256 пикселей, а верхняя — это остаток (16). Прокрутка вниз до последнего представления вызывает ту же проблему.
Приложены несколько снимков экрана для иллюстрации:
У меня есть пример проекта для Xcode 8. Я разместил проект Xcode 8 здесь, если кто-то захочет взглянуть. Кажется, я не могу понять это.
dirtyRect
в- (void)drawRect:(NSRect)dirtyRect
? - person Willeke   schedule 17.05.2017