我在swift Project中使用SVGKit。我通过以下(https://github.com/SVGKit/SVGKit)将SVGKit Framework和第三方资源文件夹正确导入到我的项目中。
我在项目中创建了一组包含.svg图像的文件夹,我使用以下代码将图像加载到testIcon(ImageView)。
let lockImage: SVGKImage = SVGKImage(named: "LockIcon.svg")
let lockImageLocal: UIImage = lockImage.uiImage
testIcon.image = lockImageLocal
但我收到以下错误,
** + [SVGKImage imageWithSource:],/ Users / fss / Downloads / SVGKit中的断言失败 - 2.X /来源/ SVGKImage.m:229
***由于未捕获的异常终止应用' NSInternalInconsistencyException',原因:'无效的参数不是 满足:newSource!= nil'
请告诉我如何在SVGKImage图像类中提及.svg
图像(在我的项目中)的路径或如何解决此问题。
答案 0 :(得分:0)
请从图片名称中删除.svg
。此方法named:
不需要扩展。
或者你也可以这样试试......
Swift 4
if let imagePath = Bundle.main.path(forResource: "imageName", ofType: "svg")
{
let lockImage: SVGKImage = SVGKImage(contentsOfFile: imagePath)
let lockImageLocal: UIImage = lockImage.uiImage
testIcon.image = lockImageLocal
}
对象类型
NSString *imagePath = [NSBundle mainBundle][ pathForResource:@"imageName" ofType:@"svg"];
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];