之前遇到的需求使用SVG矢量图,那么问题来了拿到SVG数据以后怎么去绘制。 最后找到了SVGKIT 这个第三方库。
下载地址 https://github.com/SVGKit/SVGKit
首先导入就不用说了吧 可以用pod倒入
初始化SVGKIT
我使用的是SVGKFastImageView 这个类创建的对象
- (void) initSVGWithName:(NSString *)path
{
//<! 初始化svg
svgFastImageview = [[SVGKFastImageView alloc] initWithSVGKImage:[SVGKImage imageWithContentsOfFile:path]];
//<! 设置svg的frame
svgFastImageview.frame = _SVGView.frame;
//<! 给svg图片添加点击手势
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
[svgFastImageview addGestureRecognizer:tap];
[_SVGView addSubview:svgFastImageview];
}
path 传SVG文件的路径 里面的SVGView是用于承载svgFastImageview的一个View 添加手势是为了识别在svg图上面的点击操作,因为需要点击svg区域获取到相应的信息。