TabBar设置为网络图片的坑

最近需要做个性化设置。
列如说圣诞啊、元旦啊、春节啊什么节日,对应出什么主题。
一切正常,不外乎是sd_setImage搞定。
直到涉及到了TabBar图标

问题

貌似无法直接使用网络图片,除非自定义TabBar,但那样改动就多了。
那怎么办?简单,下载到本地不就解决了?
不外乎是 SDWebImageManager 就搞定。
但是,下载后读取的图标大小不是我想要的,想一下也是,网图嘛,哪那么合规范。
想着自己把下载后的图片重新resize一下不就解决了?
仔细想想也不对……
尺寸究竟多少合适?写死还是去想办法获取,获取方法会不会失效?……

解决

不符合规范,那让它合规范不就得了。
文件命名直接来个 @2x.jpg 或者 @3x.jpg不就解决了?
嘿,这次真解决了。

let basePath = 你的存储路径
let homeTabIcon_p2x = basePath.appendingPathComponent("homeTabIcon_p@2x.jpg")
SDWebImageManager.shared.loadImage(with: URL(string: 你的图片链接), progress: nil) { img, _, _, _, _, _ in
    if let imageData = img?.jpegData(compressionQuality: 1.0) as NSData? {
        imageData.write(toFile: homeTabIcon_p2x, atomically: true)
    }
}

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容