随着Xcode 12版本的发布,现在支持SVG资产。
如果我想在我的资产目录中使用SVG,这是可以的。但它不工作时,我试图从一个网址加载它的任何想法?
let downloadURL = URL.init(string:"https://www.flaticon.com/svg/static/icons/svg/3874/3874453.svg")
image.af.setImage(withURL: downloadURL!,imageTransition: .crossDissolve(0.5))
2条答案
按热度按时间7fyelxc51#
首先,你对你想使用的框架的描述非常不清楚。很难想象
image.af.setImage
是什么。有第三方框架支持SVG,例如https://github.com/mchoe/SwiftSVG。
但我假设您对SDK解决方案感兴趣。
第二,你应该定义一下“资产”是什么意思。通常,在Xcode中,资产是内置到app中的资源文件,所以不需要从URL下载。
1.使用
WebKit
可以轻松加载SVG:2.如果您考虑的是WebKit以外的框架,可以将该镜像作为
Data
加载,然后将该Data
传递给您的框架:3.您可以将SVG保存为“资源”,并加载该本地资源。这是最好的方法
完整的代码看起来像这样:
您可以在这里下载该项目:https://github.com/gatamar/stackoverflow_answers/tree/master/so65266899
6tqwzwtp2#
实际上,我们可以使用Web视图从SVG数据创建UIImage。这个类已经过彻底测试,工作得非常好。
这行代码将演示它是多么容易使用。
数据是SVG数据。URL是SVG的服务器URL。它是可选的。