关于Cocoa Autolayout关于内容拥抱和抗压缩性之间差异的Apple文档,我找不到明确的答案.
有人可以解释他们的用法和差异吗?
我有一个NSCollectionView包含的集合CustomViews.最初,它将子视图平铺为列和行,如网格.然后我将ColumnsIB中的属性设置为1,所以现在它只是在行中一个接一个地显示它们.然而,即使我CustomView的宽度为400px,它设置为自动调整大小,NSCollectionView宽度为400px,并且设置为1列,子视图的宽度约为80px.
我知道我可以通过以下方式解决这个问题:
CGFloat width = collectionView.bounds.size.width;
NSSize size = NSMakeSize(width, 85);
[collectionView setMinItemSize:size];
[collectionView setMaxItemSize:size];
Run Code Online (Sandbox Code Playgroud)
但是将此代码放在awakeFromNib我的方法中WindowController只在程序启动时设置正确的宽度.当我调整窗口大小(和NSCollectionView我指定的自动调整大小)时,CustomViews保持其初始设置的宽度.
如果需要的话,我很乐意自己调整子视图的大小,但我对Cocoa很新,似乎找不到任何解释如何做这种事情的文章.有人能指出我正确的方向吗?
安东尼