【发布时间】:2014-11-11 10:19:52
【问题描述】:
我卡在 uicollectionview 单元格框架的框架中 我想做的是,
在 iPad 的横向模式下,我想显示 3 个单元格, 并在纵向 2 个单元格中。
当我在方法- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath中编写框架代码时
它不会影响框架的大小。
我通过应用调试器检查了它是否在此方法中。 但它来了又返回了大小。
默认情况下,我必须以横向启动我的应用程序,然后如果需要以纵向启动。
这是它的横向显示方式
这里的单元格在纵向上看起来如何
这是我的框架代码
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
//return [self.cellSizes[indexPath.item] CGSizeValue];
if (UIDeviceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation]))
{
return CGSizeMake(100, 100);
}
return CGSizeMake(200, 200);
}
无论我传递什么值,框架都没有改变。 我没有在任何地方传递任何其他帧值。
我想先给单元格框架硬编码值,然后再去动态。 但我只停留在第一位。 谁能帮帮我。
提前致谢。
【问题讨论】:
-
每次都返回200
-
不,我不这么认为。我得到的框架比 200 大得多。即使去掉那条线,它也会给出相同的框架
-
@stallone 在调用方向委托时尝试使 CollectionViewLayout 无效。
标签: ios xcode uicollectionview