Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.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 CollectionViewCell中的标签/图像未居中_Ios_Uicollectionview - Fatal编程技术网

Ios CollectionViewCell中的标签/图像未居中

Ios CollectionViewCell中的标签/图像未居中,ios,uicollectionview,Ios,Uicollectionview,我有一个自定义的collectionview单元格,它有一对标签和一个图像,所有这些都在单元格中水平居中。它在故事板中看起来很棒,所有内容都限制在中心X。单元格大小可根据屏幕宽度进行调整,以便每行显示2个单元格 当我以不同的屏幕大小运行应用程序时,没有一个项目居中。标签和图像彼此正确居中,但它们在单元格内偏离中心。有人有解决这个问题的经验吗?谢谢![![在此处输入图像描述][1][1] 编辑1: 我查过了,并不是细胞的约束把事情搞砸了 编辑2: 它似乎在我的SizeFormateIndeXPat

我有一个自定义的collectionview单元格,它有一对标签和一个图像,所有这些都在单元格中水平居中。它在故事板中看起来很棒,所有内容都限制在中心X。单元格大小可根据屏幕宽度进行调整,以便每行显示2个单元格

当我以不同的屏幕大小运行应用程序时,没有一个项目居中。标签和图像彼此正确居中,但它们在单元格内偏离中心。有人有解决这个问题的经验吗?谢谢![![在此处输入图像描述][1][1]

编辑1: 我查过了,并不是细胞的约束把事情搞砸了

编辑2: 它似乎在我的SizeFormateIndeXPath:。当我对这个函数进行注释时,单元格的布局非常完美,但是间距被弄乱了。屏幕越大,细胞之间的距离越远。我希望所有单元格之间有2点的空间

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {

      return CGSize(width: collectionView.frame.size.width / 2 - 3, height: collectionView.frame.size.width / 2 - 3)
   }

听起来就像是在标签和图像本身之间创建了居中约束,而不是实际的单元格。确保在标签和单元格之间以及图像和单元格之间创建了居中约束。不过,如果不了解您当前的约束条件,就很难说了

我有一个与您类似的问题,对我有效的方法是添加collectionView:layout:InsetsforSectionIndex:的实现,正如我的委托中协议中定义的那样

例如:

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView
                        layout:(UICollectionViewLayout *)collectionViewLayout
        insetForSectionAtIndex:(NSInteger)section {
    return UIEdgeInsetsZero;
}

我以前有过这样的经历:单元格的contentView无法正确调整大小。如果您在退出队列后执行类似cell.contentView.frame=cell.contentView.bounds的操作,该怎么办?请包括布局约束的屏幕截图。这与约束无关,请参阅我的编辑,谢谢!你的问题解决了吗?还没有解决办法。要么单元格间距很近,但单元格格式混乱;要么单元格间距很大,但单元格布局完美。太奇怪了,怎么办?谢谢谢谢你的回复。我弄明白了,它保持了SizeFormiteIndeXPath:我是如何拥有它的。然后,我的插入方向索引:两边各2个。那么最小材料间距或截面索引为2.0,最小线间距或截面索引为2.0。一切正常,再次感谢!