UITableViewCell 上的 PFImageView 断断续续的滚动
Posted
技术标签:
【中文标题】UITableViewCell 上的 PFImageView 断断续续的滚动【英文标题】:PFImageView on UITableViewCell choppy scroll 【发布时间】:2015-08-19 11:05:33 【问题描述】:我在 tableview 上使用自定义单元格,并且我有一个 PFImageView 背景图像出口(来自 Interface Builder)。
当我滚动表格并且即将出现的单元格背景图像是第一次加载时(不涉及缓存),它会产生令人讨厌的跳转视觉效果。
当图像已经缓存时,不会产生这种奇怪的效果。 我使用这段代码 sn-p 来异步加载图像:
_ivBackground.image = nil;
_ivBackground.file = recipe.photo;
[_ivBackground loadInBackground:^(UIImage *image, NSError *error)
if (!error)
[UIView transitionWithView:_ivBackground
duration:0.2f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^
_ivBackground.image = image;
completion:NULL];
];
我注意到加载大于 200kb 的图像时会出现这种效果。
还有其他解决方案可以避免这种奇怪的行为吗?
谢谢。
【问题讨论】:
【参考方案1】:那是因为 PFImageView 已经设置了图像(没有动画)。 如果你想要一个自定义动画,也许你应该实现你自己的 UIImageView 子类。
或者,您可以尝试在调用动画之前调用_ivBackground.image = nil;
(我没有尝试过)。
[_ivBackground loadInBackground:^(UIImage *image, NSError *error)
_ivBackground.image = nil;
if (!error)
[UIView transitionWithView:_ivBackground
duration:0.2f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^
_ivBackground.image = image;
completion:NULL];
];
【讨论】:
以上是关于UITableViewCell 上的 PFImageView 断断续续的滚动的主要内容,如果未能解决你的问题,请参考以下文章
如何使 UITableViewCell 上的 UIProgressView 立即更改?
UITableViewCell 内的 UIView 上的 UIGestureRecognizer