【问题标题】:Resizing NSCollectionView to fit inner items?调整 NSCollectionView 的大小以适应内部项目?
【发布时间】:2013-01-04 01:30:03
【问题描述】:

如何调整我的 NSCollectionView 的大小以适合我所有项目的大小?

我试过类似的东西:

    float height=0;
for(int i=0;i<[drives count]; i++) {
    height += [[[collectionView itemAtIndex:i] view] bounds].size.height;
}
NSLog(@"%lg", height);
[[self view] setBoundsSize:NSMakeSize(300, height)];

我得到的只是一个可怕的结果:collectionView 被扭曲了。它以前比父视图小,因此它扩展以填充父视图。

注意:我删除了集合视图的滚动条,内部​​项目是 NSBox。

Ps:这是我没有任何调整大小的东西;

【问题讨论】:

  • 你的意思是你摆脱了界面生成器自动添加的滚动视图?如果是这样,请不要这样做...它需要正确绘制该视图,否则它将与其展开的项目一样大。
  • 我希望它在不滚动的情况下显示我的所有项目!

标签: objective-c cocoa nscollectionview nscollectionviewitem


【解决方案1】:

看看这个问题:Can NSCollectionView autoresize the width of its subviews to display one column我认为这可能有助于解决你的问题!

【讨论】:

  • 不是我想要的:如果项目没有占据所有空间,我希望 CollectionView 调整大小。
【解决方案2】:

嗯,我的第一个方法还不错。

我只需要使用[[self view] setFrame:] 而不是[[self view] setBoundsSize:] 来调整NSCollectionView 的大小

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-17
    • 2014-09-07
    • 2011-08-20
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 2020-10-09
    • 1970-01-01
    相关资源
    最近更新 更多