2016-09-20 63 views
0

我有一个NSCollectionView具有NSCollectionViewItem作为子对象。我有NSCollectionView的流布局设置项目的宽度来填充应用程序启动时视图的宽度,但如果我调整窗口大小,项目保持原始宽度,不再填充视图。有什么方法可以自动调整大小(填充宽度)​​,还是有一种方法在集合视图调整大小时(从窗口大小调整),我可以访问以设置项目的宽度以填充视图?更新NSCollectionViewItem的大小,当它的父NSCollectionView更改大小

回答

0

所有你需要做的是覆盖集合视图类是这样的:

class MyCollectionView: NSCollectionView { 
    override var frame: NSRect { 
    didSet { 
     collectionViewLayout?.invalidateLayout() 
    } 
    } 
} 

这确保了无论何时集合视图更改框架,它使布局无效。