【发布时间】:2012-12-14 22:43:37
【问题描述】:
我们有一行 139x127 的图像在我们的集合视图单元格中显示,并带有边框。我们尝试了 UIViewContentModeScaleAspectFill(和 Fit),但它仍然显示边框。
代码如下: // uicollectionviewcell
(id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
self = [super initWithFrame:frame];
if (self) {
// Initialization code
NSArray *arrayOfViews = [[NSBundle mainBundle] loadNibNamed:@"ProfilePhotoCell" owner:self options:nil];
if ([arrayOfViews count] < 1) {
return nil;
}
if (![[arrayOfViews objectAtIndex:0] isKindOfClass:[UICollectionViewCell class]]) {
return nil;
}
self = [arrayOfViews objectAtIndex:0];
}
[self.imageView setContentMode:UIViewContentModeScaleAspectFill];
return self;
}
return self;
}
// uicollectionview/viewcontroller
// 1
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
// 2
CGSize retval = CGSizeMake(100, 66);
return retval;
}
// 3
- (UIEdgeInsets)collectionView:
(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
return UIEdgeInsetsMake(20, 0, 0, 0);
}
这是一个截图:! http://m.mirror.co/collection.png
【问题讨论】:
-
你想要什么...带边框或不带边框的图片
-
图像之间没有间距/填充
-
UIEdgeInsetsMake(0, 0, 0, 0);
-
不,我之前尝试过,但没有成功。奇怪的是,改变增加顶部、底部、左侧和右侧的值确实会增加它们之间的间距,即使我使用了负值,但仍然无法删除图像之间的间距。
-
将 sizeForItemAtIndexPath 中的值调整为宽度为 320.0/3.0
标签: iphone objective-c uiimageview uicollectionview