繁体   English   中英

当其父NSCollectionView更改大小时,更新NSCollectionViewItem的大小

[英]Update the size of an NSCollectionViewItem when its parent NSCollectionView changes size

我有一个NSCollectionView,其中有NSCollectionViewItem作为子对象。 我有NSCollectionView的流程布局,用于设置项目的宽度以在应用程序启动时填充视图的宽度,但是如果我调整窗口的大小,则项目将保持原始宽度并且不再填充视图。 有什么方法可以让我自动调整大小(填充宽度)​​,或者有一种方法可以在调整集合视图的大小(从窗口调整大小)时调用,我可以访问该方法来设置项目的宽度以填充视图?

您需要做的就是重写集合视图类,如下所示:

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

这确保了只要集合视图的框架发生更改,它都会使布局无效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM