das wird schwer zu erklären sein. Ich modifiziere den InfoBarStackView-Beispielcode von Apple. Das Problem, das mir begegnet, ist, dass es so aussieht, als ob eine der Unteransichten durch NSStackview in zwei geteilt und separat gerendert wird.NSStackView/NSScrollView - unterteilte NSStackview-Unteransicht?
In meinem Beispiel füge ich meiner Stapelansicht 4 Unteransichten hinzu, die jeweils genau die gleiche Größe (und den gleichen Code) haben. Dies wird dann in eine NSScrollView platziert. (Das Layout ist vertikal.)
Wenn die Anwendung ausgeführt wird, sehe ich die allerersten zwei Teilansichten. Wenn ich nach unten scrolle, beginnt die Seltsamkeit. Die nachfolgende Ansicht wird gerendert, wobei der untere Teil gerendert wird und dann der obere gerendert wird. Wenn die vertikale Größe 272 Pixel beträgt, wird der Boden als 256 Pixel gerendert, und der obere Teil ist der Rest (16). Scrollen bis zur letzten Ansicht verursacht das gleiche Problem.
Beigefügt sind einige Bildschirm packt zu veranschaulichen:
Ich habe ein Beispielprojekt für Xcode 8. ich das Xcode 8 Projekt here gebucht haben, wenn jemand einen Blick nehmen möchten. Ich kann das anscheinend nicht herausfinden.
Verstehen Sie, was 'dirtyRect' in' - (void) drawRect: (NSRect) dirtyRect' ist? – Willeke