首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SVGKit iOS图像加载

SVGKit iOS图像加载
EN

Stack Overflow用户
提问于 2014-06-10 16:09:56
回答 3查看 2.1K关注 0票数 0

我已经将SVGKit导入到我的项目中,并且我想加载我存储在NSString中的SVGKit图像,如下所示:

代码语言:javascript
复制
<svg xmlns="http://www.w3.org/2000/svg" ....
</svg>

当我尝试通过

代码语言:javascript
复制
SVGKImage* newImage = [SVGKImage imageWithContentsOfURL:svgUrl];

我得到错误是因为url是nil,这是显而易见的,因为它不是URL,但是库中有没有我可以使用的方法??

EN

回答 3

Stack Overflow用户

发布于 2014-06-10 16:33:09

您需要从URL的字符串表示形式创建一个NSURL对象,因此:

代码语言:javascript
复制
NSString *strURL = "http://......";

NSURL *imageURL = [[NSURL alloc] initWithString:strURL];

SVGKImage *svgImage = [SVGKImage imageWithContentsOfURL:imageURL];

这有帮助吗?

票数 0
EN

Stack Overflow用户

发布于 2014-06-10 16:35:43

您可以这样做:

代码语言:javascript
复制
NSData* svgData = [svgSource dataUsingEncoding: NSUTF8StringEncoding];
SVGKImage *svgImage = [SVGKImage imageWithData:svgData];

然而,我怀疑你应该做的就是张的建议。在任何情况下,您都应该确保在下载数据时是在主线程之外进行的。

票数 0
EN

Stack Overflow用户

发布于 2016-01-30 11:35:17

使用SVGKit 2.x,您可以使用SVGKLayeredImageView并从URL加载图像:(我的Swift Xcode7.1示例代码)

  1. 在界面生成器中,将一个“视图”拖动到场景中。
  2. 转到身份检查器,并将该视图的自定义类更改为SVGKLayeredImageView (如果该类不可用,并且您在此处看不到它,这意味着您没有导入与我相同的版本的SVGKit,或者没有正确地install框架)
  3. 对该视图进行插座连接,那么您应该拥有

@IBOutlet弱var svgImageView: SVGKLayeredImageView!

  1. 使用率

如果让url = NSURL(string:"http://your-svg-file-url"){ if url.pathExtension!.lowercaseString == "svg“{ svgImageView.image = SVGKImage(contentsOfURL: url) } }

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24135942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档