故事板+UIcollectionView:Ui在iOS模拟器和设备上的显示方式不同

故事板+UIcollectionView:Ui在iOS模拟器和设备上的显示方式不同,ios,xcode,uicollectionview,uistoryboard,Ios,Xcode,Uicollectionview,Uistoryboard,我正试图在Xcode 6上为iPhone5、5c、5s和6制作一个带有Stroyboards的应用程序,但我遇到了一个问题 我将UICollectionView与自定义UICollectionViewCell以及该单元格中包含的另一个自定义视图一起使用 问题是,当我看故事板时,我看到了我需要的东西,我在iOS模拟器中运行应用程序,UI看起来很好,但当我在iPhone 5c上测试相同的应用程序时,UI大部分是空白的 这是来自模拟器的图像: 这就是我在iPhone上看到的: 单个项是UIViewCo

我正试图在Xcode 6上为iPhone5、5c、5s和6制作一个带有Stroyboards的应用程序,但我遇到了一个问题

我将UICollectionView与自定义UICollectionViewCell以及该单元格中包含的另一个自定义视图一起使用

问题是,当我看故事板时,我看到了我需要的东西,我在iOS模拟器中运行应用程序,UI看起来很好,但当我在iPhone 5c上测试相同的应用程序时,UI大部分是空白的

这是来自模拟器的图像:

这就是我在iPhone上看到的:

单个项是UIViewControllerCell子类的对象

模拟器屏幕截图中的图像是包含在UICollectionViewCell中的UIView,它根据我提供给它的图像数量设置图像的帧。因此,如果我有1个,那么它将显示在为图像指定的完整区域中,如在第一项中,它最多可以显示4个图像。如果有4个以上的图像,则有一个标签代替第4个图像

我觉得奇怪的是,在iPhone5c上,用户界面只显示一个图像,所以至少UiCollectionView单元格是可见的,但同样的,单元格也有白色背景色,为什么没有出现? 这是子类UICllectionViewCell的drawRect方法中的cod:

-(void)drawRect:(CGRect)rect {    
self.contentView.layer.cornerRadius = 3.0f;
self.contentView.layer.borderWidth = 0.25f;
self.contentView.layer.borderColor = [UIColor clearColor].CGColor;
self.contentView.backgroundColor = [UIColor whiteColor];
self.contentView.layer.masksToBounds = YES;

self.layer.shadowColor = [UIColor blackColor].CGColor;
self.layer.shadowOffset = CGSizeMake(0, 0.5f);
self.layer.shadowRadius = 3.0f;
self.layer.shadowOpacity = 0.125f;
self.layer.masksToBounds = NO;
self.layer.shadowPath = [UIBezierPath bezierPathWithRoundedRect:self.bounds cornerRadius:self.contentView.layer.cornerRadius].CGPath;
}

我试着玩弄约束,但什么也没发生,我关闭了自动布局,仍然一无所获

有人能指出什么是错误的和任何修复吗

多谢各位

编辑1:

我添加了self.contentView.frame=self.frame;到drawRect的顶部,结果如下:

这是我用来加载图像的代码,它位于子Cassed UICollectionViewCell中:

-(void) populate:(dataObject *) dataObject
{

}


self.thumbnailsViewArea是将包含图像的单元格中视图的IBOutlet。

检查自动布局属性

我关闭了自动布局,出于某种原因,它开始准确地显示我在故事板上看到的内容。我也尝试过自动布局,我发现它也可以工作,但我不需要在这个屏幕上自动布局,所以我不打算这样做。我会等一等,看看我是否至少能得到一个更好的解释,否则我会把你的答案标记为接受。
NSArray *thumbsArray = dataObject.thumnails;
_thumbnailsView = [[ThumbnailsView alloc] initWithFrame:CGRectMake(0, 0, 139, 107)];
_tempThumbnailsView = [[ThumbnailsView alloc] initWithFrame:CGRectMake(0, 0, 139, 107)];
[_tempThumbnailsView setBackgroundColor:[UIColor blueColor]];
_tempThumbnailsView.fileCount = bucket.fileCount;
_tempThumbnailsView.thumbnailsArray = thumbsArray;

[self.thumbnailsViewArea addSubview:_tempThumbnailsView];

self.title.text = dataObject.name;