·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> IOS开发 >> [IOS]Swift使用SVGKit的记录

[IOS]Swift使用SVGKit的记录

作者:佚名      IOS开发编辑:admin      更新时间:2022-07-23

最近打算使用swift和SVGkit做一个app,遇到了好多状况,对于初学者的几个概念,一个是静态库,第二个是oc和swift混编,第三个是xcode6b4的类库不齐全.

 

首先是SVGKit的GitHub的地址https://github.com/SVGKit/SVGKit,谷歌一下,百度一下都能找到,然后下载整个svgkit的项目。

好了接下来我们按照正常的swift创建我们的项目,然后我们按照我们的GitHub的要求(Build the static library),这里我就不翻译了其实很简单的,创建了我们的静态库.a文件以及usr文件夹,这里注意一定要按照GitHub上的选择“Debug-universal”的文件夹里面的文件,否则会出错,选择iphone或者模拟器的文件都不能够完整的运作。做完GitHUb的步骤,这里另外要注意 我的Xcode6b4的类库不完整类似CoreText都没有,后来更新到了Xcode6beta5才正常了,这里建议大家都更新到最新的Xcode6beta5。

第三个步骤是关于我们的oc与swift混编了,这个网上也有,我这里贴出截图和代码来给大家看一下。

新建一个.h 的文件作为“桥梁” ,

 

我命名为OCHeader.h然后 我们到 build setting里面进行设置,注意路径,如果建在某个文件夹下面的,要把文件夹名称带上,xxx/xxx.h否则会报错

 

然后,我们在这个OCHeader.h设置我们要导入的一些类

#ifndef svgtest_OCHeader_h
#define svgtest_OCHeader_h
#import "SVGKit.h"             //这就是我要添加的SVGKit的类,方便我的swift直接调用
#import "SVGKImage.h"  //同上

#endif

 

一次添加全局的swift都可以直接使用,

然后我在我的ViewControler中写我们的代码把

我先设置了一个button让其点击后加载我的svg格式的文件,svg格式的文件事先导入到了我的项目。

import UIKit

//cnblog里面没有swift 将就一下用了c的模板 代码里面对比了oc的例子指导代码,我们可以看到很多不同点。
class ViewController: UIViewController {
    
    @IBOutlet var firstview: UIView!
    
    @IBAction func showsvgbuttonclic(sender: AnyObject) {
        var svgim:SVGKImage=SVGKImage(named: "Rsimplified.svg")
        //SVGKImage* newImage = [SVGKImage imageNamed:@"myImage.svg"];
        
        
        var svgimview=SVGKLayeredImageView(SVGKImage: svgim)
        //SVGKImageView* imageView = [[SVGKLayeredImageView alloc] initWithImage:newImage];
        
        firstview.addSubview(svgimview)
        //[self.view addSubView:  [[SVGKLayeredImageView alloc] initWithImage:newImage];
        NSLog("showsvgbuttonclick")
        
        
        
    }