Ich habe eine NSCollectionView
, die eine Sammlung von CustomViews
enthält. Anfangs wurden die Unteransichten wie ein Gitter in Spalten und Zeilen gekachelt. Ich habe dann die Eigenschaft Columns
in IB auf 1 gesetzt, so dass sie nun nacheinander in Reihen angezeigt werden. Obwohl meine CustomView
400 Pixel breit ist, ist sie auf Autoresize eingestellt, die ist 400 Pixel breit, und sie ist auf 1 Spalte eingestellt, die Unteransichten sind etwa 80 Pixel breit.Kann NSCollectionView die Breite seiner Unteransichten autorisieren, um eine Spalte anzuzeigen
Ich weiß, ich kann dieses Problem umgehen, durch den Aufruf:
CGFloat width = collectionView.bounds.size.width;
NSSize size = NSMakeSize(width, 85);
[collectionView setMinItemSize:size];
[collectionView setMaxItemSize:size];
Aber setze diesen Code in der awakeFromNib
Methode meines WindowController
setzt nur die richtige Breite, wenn das Programm startet. Wenn ich die Größe des Fensters ändere (und die Autoresize wie ich angegeben habe), bleiben die CustomViews auf der ursprünglich eingestellten Breite.
Ich kümmere mich gerne um die Größenanpassung der Unteransichten, wenn es sein muss, aber ich bin ziemlich neu in Cocoa und kann anscheinend keine Artikel finden, die erklären, wie man so etwas macht. Kann mir jemand in die richtige Richtung zeigen?
Anthony
dass entdeckt haben jetzt brauchen Ich kann meinen WindowController als den Delegaten des Windows festlegen und Größenänderung Benachrichtigungen über WindowDidResize erhalten. Also verwende ich jetzt den Code über jedes Mal, wenn das Fenster die Größe ändert, um die Max- und Min-Artikelgrößen einzustellen. Dies funktioniert gut, wenn das Fenster wächst, aber aus irgendeinem Grund die Erhöhung der Min/Max Item Größen bewirkt, dass die Grenzen der CollectionView nie schrumpfen, auch wenn das Fenster dies tut. Also, obwohl die CollectionView visuell schrumpft, wenn ich die Größe des Fensters ändern, ist es Grenzen, und dort für meine Subviews auch nicht! – littlecharva
Haben Sie jemals einen Weg gefunden, dies automatisch zu tun? – tofutim