自定义UICollectionViewCell添加了UIImageView,结果第一能加载出图片,再次进入就不出现图片变成白色了。一通检查之后找到了原因,记录一下。
前提: 我使用的Masonry 布局,在自定义cell中设置了Cell的阴影和圆角,结果就显示不出来。如果是在cellForItemAtIndexPath中给定Cell的阴影和圆角,那么就不会出现这种情况 解决方法: 添加圆角或者阴影前需调用layoutIfNeeded方法
- (void)configUILayer
{
[self layoutIfNeeded
];
self.layer
.shadowColor
= [UIColor colorWithWhite
:0.0 alpha
:0.1].CGColor
;
self.layer
.shadowOffset
= CGSizeMake(0,3);
self.layer
.shadowRadius
= 6;
self.layer
.shadowOpacity
= 1;
self.layer
.cornerRadius
= 6;
}
原因: 如果我们想要给View添加阴影或者剪切圆角还有就是绘图,一定是在布局以后才能完成。layout没有完成布局,所以我们需要调用layoutIfNeeded方法,允许您在绘图周期发生之前执行布局。 如果有误,欢迎大家指正。大家加油!!!