3

我正在使用SDWebImage,我想添加一个加载指示器。我找到了该UIActivityIndicator-for-SDWebImage库,并尝试通过添加以下内容将其添加到我的 Swift 项目中:

#import "UIImageView+UIActivityIndicatorForSDWebImage.h"

到我的桥接头。usingActivityIndicatorStyle由于某种原因,我在设置图像 URL 时仍然无法访问额外的参数。

有人知道我做错了什么吗?我尝试删除 .m 和 .h 文件并重新添加它们,但没有帮助。

4

3 回答 3

4
  1. 添加“use_frameworks!” 在 Podfile 中

    use_frameworks!
    
    target '<YOUR TARGET>' do
    .........
        pod 'UIActivityIndicator-for-SDWebImage'
    .........
    end
    
  2. 在“Pods -> UIActivityIndi​​cator-for-SDWebImage -> UIImageView+UIActivityIndi​​catorForSDWebImage.h”中替换:

    #import "UIImageView+WebCache.h"
    #import "SDImageCache.h"
    

    和:

    #import <SDWebImage/UIImageView+WebCache.h>
    #import <SDWebImage/SDImageCache.h> 
    
  3. 在“AppDelegate.swift”中添加

    import UIActivityIndicator_for_SDWebImage
    

    就这样。

PS 你应该更正 Pods 因为 UIActivityIndi​​cator-for-SDWebImage 的作者在描述中写道:“......我真的不想让这个 repo 保持更新......”,他真的没有这样做。

于 2016-04-09T15:43:26.380 回答
3

斯威夫特 3 和 SDWebImage 4.0.0

这可以解决问题,试试这个代码

        let urlString = URL(string: "Your image URL")
        yourImageView.sd_setIndicatorStyle(.gray)
        yourImageView.sd_setShowActivityIndicatorView(true)
        yourImageView.sd_setImage(with: urlString) { (loadedImage, error, cacheType, url) in
            yourImageView.sd_removeActivityIndicator()
            if error != nil {
                print("Error code: \(error!.localizedDescription)")
            } else {
                yourImageView.image = loadedImage
            }
        }
于 2017-05-06T02:54:13.257 回答
1

上面的答案有效

关注这个问题https://github.com/JJSaccolo/UIActivityIndi​​cator-for-SDWebImage/pull/28

你会发现一个已经进行了这个更新的叉子

https://github.com/masterfego/UIActivityIndi​​cator-for-SDWebImage

我也分叉了

https://github.com/useeless37/UIActivityIndi​​cator-for-SDWebImage

然后在你的 pod 文件中

pod 'UIActivityIndicator-for-SDWebImage', :git => 'https://github.com/useeless37/UIActivityIndicator-for-SDWebImage.git'
于 2016-11-02T05:46:09.200 回答