Ios UICollectionViewCell间距设置为0,但仍有间距
我正在尝试使单元格之间的间距=0 期望结果的示例: 我目前拥有的(iPhone 6): 我的代码:Ios UICollectionViewCell间距设置为0,但仍有间距,ios,objective-c,xcode,uicollectionview,uicollectionviewlayout,Ios,Objective C,Xcode,Uicollectionview,Uicollectionviewlayout,我正在尝试使单元格之间的间距=0 期望结果的示例: 我目前拥有的(iPhone 6): 我的代码: - (UICollectionViewFlowLayout *)setCollectionViewFlowLayout { UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; //iphone5 100 //iphone6 118 layout.item
- (UICollectionViewFlowLayout *)setCollectionViewFlowLayout
{
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
//iphone5 100
//iphone6 118
layout.itemSize = CGSizeMake(118, 118);
layout.footerReferenceSize = CGSizeMake(0, 0);
layout.sectionInset = UIEdgeInsetsMake(0, 0, 0, 0);
layout.minimumInteritemSpacing = 0.0;
layout.minimumLineSpacing = 0.0;
return layout;
}
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
return UIEdgeInsetsMake(0, 0, 0, 0);
}
我对IB的了解:
我错过了什么?提前谢谢 如果未设置,请更新您的cellsize和imageview大小。您必须将imageview的约束设置为与单元格匹配 替换
layout.itemSize = CGSizeMake(118, 118);
与
我设置屏幕大小是因为我假设您的collectionview适合屏幕宽度。将其替换为您的collectionview大小
因为您试图显示3个单元格,但为项目设置了固定宽度。所以只需更新你的单元格大小。因为在不同的屏幕中,您的集合视图宽度将发生变化,所以您也应该更新单元格大小。它说是项目之间的最小间距,而不是固定间距。
UICollectionViewFlowLayout
始终尝试在一行上设置尽可能多的项目
您应该将UICollectionView单元格的宽度设置为动态,并根据UICollectionView
的大小计算它们
比如说。如果您希望一行有3个单元格,请将UICollectionView
的宽度除以3,就应该有单元格的宽度。不过,这需要对这些值进行一些实验。谢谢您的回答。但还是给了我同样的结果。间距仍然很小there@tnylee那么也许你没有设置imageview的约束。是的!谢谢我将图像的大小更改为与单元格相同。
layout.itemSize = CGSizeMake([UIScreen mainScreen].bounds.size.width /3, [UIScreen mainScreen].bounds.size.width /3);