【发布时间】:2015-03-29 06:46:12
【问题描述】:
我有一个水平集合视图,它有 20 个带有 UIImageView 的单元格 我只想显示活动指示器,直到图像下载完成。我正在使用新的 SDWebImage 库,其中我们有 sd_setImageWithURL 方法 到现在我在做的是
__block UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
activityIndicator.center = cell.photoOneImageView.center;
activityIndicator.hidesWhenStopped = YES;
[cell.photoOneImageView sd_setImageWithURL:[NSURL URLWithString:@"https://scontent-sjc.xx.fbcdn.net/hphotos-xpa1/v/t1.0-9/p480x480/11073324_10153728863852926_4010319763478440264_n.jpg?oh=590934059508b7da235a46fc39e08063&oe=55B61458"]
placeholderImage:[UIImage imageNamed:@"placeholder.jpg"]
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
[activityIndicator stopAnimating];
[activityIndicator removeFromSuperview];
}];
[cell.photoOneImageView addSubview:activityIndicator];
[activityIndicator startAnimating];
我在 cellForItemAtIndexPath 方法中编写此代码 它有时会在 1 个单元格上显示多个指示器,有时当我们水平滚动集合视图时它们也不会移除。
我看到了这个https://github.com/rs/SDNetworkActivityIndicator,但我无法使用它。没有运气。当图像完成指示器消失时,是否有人在 tebleview 单元格或集合视图单元格中实现了活动指示器。请帮忙。任何帮助将不胜感激。谢谢
【问题讨论】:
-
您在 cellForRow 中调用 addSubview,而不是将活动指示器作为单元格的一部分。
-
有没有其他方法...
-
您可以将活动指示器作为自定义单元格的一部分,就像您不是每次都添加 photoOneImageView 一样......
-
你的意思是说我应该将它添加为占位符......并保持动画效果。我怎样才能实现它..我在 setimagewithurl 函数中传递了一个 .jpg 。请帮助
-
它不是占位符,它只是在加载时动画,并在调用完成块时停止动画。您所做的一切只是不要一直在单元格中添加随机指示器:)
标签: ios objective-c uicollectionview uiactivityindicatorview sdwebimage