ios - 使用 SDWebImage 下载的图像的 UIImageView 幻灯片

标签 ios objective-c animation uiimageview sdwebimage

我正在为延时照片制作应用程序,我正在使用 SDWebImage从服务器下载+缓存照片,我想从一系列照片中进行幻灯片放映。我已经为 UIImageView 尝试了 SDWebImage 的方法 setAnimationImagesWithURLs,它有效,但我需要更多的控制(我不想在 viewDidLoad 之后立即开始动画,...)。

我想在显示 View Controller 后,它开始从 NSURL 数组下载照片,只显示第一张图片,有播放/停止/下一个控件,用户可以点击它们开始动画...

在每个关于 UIImageView 动画的教程中,他们将图像加载到数组中,用作 setAnimationImages:array,但在阅读后 this answer , 看起来这不是个好主意。

那么正确的做法是什么?

最佳答案

基于Wain's,对于任何需要它的人回答,我想出了解决方案 SDWebImageKASlideShow ,效果很好。

这是我的代码:

    self.slideshow = [[KASlideShow alloc] initWithFrame:CGRectMake(0,0,320,225)];
    [self.slideshow setDelay:1]; // Delay between transitions
    [self.slideshow setTransitionDuration:1]; // Transition duration
    [self.slideshow setTransitionType:KASlideShowTransitionFade]; // Choose a transition type (fade or slide)
    [self.slideshow setImagesContentMode:UIViewContentModeScaleAspectFill]; // Choose a content mode for images to display
    self.slideshow.delegate = self;

    SDWebImageManager *manager = [SDWebImageManager sharedManager];
    for (NSURL *snap in self.imagesURLArray) {
        [manager downloadWithURL:snap options:0 progress:nil completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished) {
            if (image)
            {
                [self.slideshow addImage:image];
            }
        }];
    }

    // do not forget to add slideshow as a subview
    [self.view addSubview:self.slideshow];

关于ios - 使用 SDWebImage 下载的图像的 UIImageView 幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21804933/

相关文章:

iOS - AudioKit 在接听电话时崩溃

ios - 在单一应用程序模式下静默更新 iOS 企业应用程序

iphone - 将 NSString 变量传递给函数并修改它

javascript - Javascript动画 Canvas (人物运动)

android - 动画 Android 窗口和 View

iphone - NSMutableArray,TableView,以编程方式切换 View

iPhone - 创建一个在导航 Controller 中始终可见的 View

Swift:UITableViewCell从右到左弹跳动画

ios - nsarray 中缺少数字

objective-c - 当 UIProgressView 已满时加载新 View