iphone - 获取 NSCollectionViewItem 的 frame.size
<p><p>我正在使用 SSToolkit/SSCollectionView,并且我有一个自定义的 SSCollectionViewItem,但我很难获得由 SSCollectionView 代表设置的该 View 的帧大小:</p>
<pre><code>- (CGSize)collectionView:(SSCollectionView *)aCollectionView itemSizeForSection:(NSUInteger)section {
return CGSizeMake(280.0f, 280.0f);
}
</code></pre>
<p>这是正在初始化的项目:</p>
<pre><code>#pragma mark - Initializer
- (id)initWithReuseIdentifier:(NSString *)aReuseIdentifier {
if ((self = )) {
if() {
NSLog(@"Frame: %f", self.frame.size.width);
return self;
} else {
self.imageView.backgroundColor = ;
return self;
}
self.imageView.backgroundColor = ;
}
return self;
}
</code></pre>
<p><code>NSLog(@"FRAME Width:%f", self.frame.size.width);</code> 总是返回一个 0</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>这是预期的行为。所有 Collection View 项始终使用 CGRectZero 进行初始化,因为它们可以在具有不同项大小的部分中重复使用。</p>
<p>SSCollectionView 在项目显示之前自动调整它们的大小。如果需要根据项目的大小进行布局,则应实现 <code>layoutSubviews</code>。</p>
<p>此外,您似乎正在尝试根据标识符进行不同的绘图。我强烈建议您为每个标识符创建一个不同的类,以保持内容简洁易懂。</p></p>
<p style="font-size: 20px;">关于iphone - 获取 NSCollectionViewItem 的 frame.size,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/11419527/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/11419527/
</a>
</p>
页:
[1]