Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UICollectionView嵌入到UINavigationController中,但UICollectionViewCell框架错误_Ios_Objective C_Uicollectionview_Uicollectionviewcell_Uicollectionviewlayout - Fatal编程技术网

Ios UICollectionView嵌入到UINavigationController中,但UICollectionViewCell框架错误

Ios UICollectionView嵌入到UINavigationController中,但UICollectionViewCell框架错误,ios,objective-c,uicollectionview,uicollectionviewcell,uicollectionviewlayout,Ios,Objective C,Uicollectionview,Uicollectionviewcell,Uicollectionviewlayout,我有一个UINavigationController来控制两个视图控制器VC1和VC2 图中显示的是VC2。还有一个UICollectionView作为VC2.view的子视图,还有一个嵌入在UICollectionView中的UICollectionCell,如下所示 但是当我从VC1推到VC2时,UICollectionCell的帧不正确。我写的代码是: //VC2.m UICollectionViewFlowLayout *l = [[UICollectionViewFlowL

我有一个UINavigationController来控制两个视图控制器VC1和VC2

图中显示的是VC2。还有一个UICollectionView作为VC2.view的子视图,还有一个嵌入在UICollectionView中的UICollectionCell,如下所示

但是当我从VC1推到VC2时,UICollectionCell的帧不正确。我写的代码是:

   //VC2.m
   UICollectionViewFlowLayout *l = [[UICollectionViewFlowLayout alloc]init];
   l.itemSize = CGSizeMake(self.bounds.size.width, self.bounds.size.height);
   l.minimumLineSpacing = 6.0f;
   l.sectionInset = UIEdgeInsetsMake(0, 0, 0, 6.0);
   l.scrollDirection = UICollectionViewScrollDirectionHorizontal;
   UICollectionView *parallaxCollection = [[UICollectionView alloc]initWithFrame:frame collectionViewLayout:l];
   [parallaxCollection registerClass:[CollectionCell class] forCellWithReuseIdentifier:@"CollectionCell"];
   [self addSubview:parallaxCollection];
在initWithFrame:(CGRect)帧中,我得到的单元格帧是(0,-32320568):


我怎么了?

尝试在初始化子视图后调整其大小。 开发者库说:

LayoutSubview-如果您需要比约束或自动调整大小行为提供的更精确地控制子视图的布局,请实现此方法

使用


我修复了它,只需在VC2中添加以下代码:

self.automaticallyAdjustsScrollViewInsets = NO;

导致UICollectionViewCell有一个滚动视图作为子视图。

在哪里写入此代码。在UICollectionView或UICollectionViewCell中?在UICollectionViewCell中
-(void)layoutSubviews
self.automaticallyAdjustsScrollViewInsets = NO;