• [IOS]Swift使用SVGKit的记录


    最近打算使用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")
            
            
            
        }
  • 相关阅读:
    Android WIFI 启动流程(TIP^^)
    MVVM模式原则
    CoreData入门
    转:iOS绘制一个UIView
    CGBitmapContextCreate函数参数详解
    RACCommand
    ReactiveCocoa内存管理
    IOS TableView滑动不灵敏问题
    IOS数组的排序和筛选
    IOS取消performSelector警告
  • 原文地址:https://www.cnblogs.com/zoe-j/p/3891354.html
Copyright © 2020-2023  润新知