2

我想NSCollectionView在其封闭的滚动视图中居中(水平和垂直)。

如何确定集合视图的理想大小以使所有项目视图都适合?

当包含在滚动视图中时,集合视图似乎总是会调整自身大小以填充整个文档视图。

此外,如果未包含在滚动视图中,则集合视图在添加新项目时不会更改其框架。

4

1 回答 1

0

我建议您自定义 NSCollection 视图。你所能做的就是覆盖 NSCollectionView 的 "drawRect" 方法并插入它自己的矩形。以下是解决您问题的方法

实施步骤:

  1. 创建一个类“NSModifiedCollectionView”,它从 NSCollection 视图继承并执行以下操作。

    @interface NSModifiedCollectionView : NSCollectionView
    
    @end
    
    @implementation NSModifiedCollectionView
    
    - (void) drawRect:(NSRect)dirtyRect
    {
        //You can inset more than 9.0 as per your needs but this will make you fit exactly 
        NSRect insetRec = NSInsetRect(dirtyRect, 9.0, 9.0);
    
        [super drawRect:insetRec];}
    

2:将对象列表中的 NSCollectionView 拖放到 Xib 并将其自定义类修改为"NSModifiedCollectionView"。现在运行并检查它是否应该按预期工作。

于 2013-05-27T11:06:57.367 回答