ios-charts(swift2.3) 引入到自建工程(xcode7.3.1,swift2.3, OC)中

项目工程和相关移植连接参见:html

1. http://www.cnblogs.com/wanghuaijun/p/5587746.html#3618790ios

2. http://www.jianshu.com/p/b2570953d95cgit

3. http://www.cnblogs.com/gaox97329498/p/4734917.htmlgithub

4. 手动建立bridging header文件x-Bridging-Header.hswift

http://www.jianshu.com/p/27b9ff63ab6f 
5. ios的绝对路径和相对路径
http://www.cnblogs.com/muyushifang07/p/4460688.htmlxcode

 

1、下载Charts框架

下载地址:https://github.com/danielgindi/Charts.
解压后的文件夹里面的内容是这个样子的,以下图:app

2、新建工程,导入Charts.xcodeproj工程

1. 新建工程

新建工程,取名为ImportChartsDemo.框架

2.复制Charts整个文件和Masonry文件夹到ImportChartsDemo工程目录中

 

 3.导入Charts.xcodeproj到工程中post

     将Charts文件夹中的Charts.xcodeproj工程文件导入到ImportChartsDemo工程中,注意导入的是Charts.xcodeproj工程,而不是Charts文件夹(利用File/Add File to "xxx"加入Charts.xcodeproj,这样会把工程中的全部文件和目录引入工程 ),以下图:测试

4. 在本身的工程中创建分组Masonry("右键"-New Group),将本身工程中的Masonry文件夹的文件所有拖入该分组

5.添加Charts.framework

找到General->Embedded Binaries,点击+号添加Charts.framework,以下图:

Embedded Binaries位置

添加的iOS的framework,以下图:


                添加  Charts.framework

 

3、创建OC和Swift的桥接文件

ImportChartsDemo工程中新建一个Swift文件(File/new/swift文件),名字随便取(例如test),这时候会提示是否创建桥接文件,直接选Create Bridging Header选项,以下图:

 

创建桥接文件


新建完成后,会自动生成一个桥接文件,以下图:


自动生成的桥接文件

若是未自动建立x-Bridging-Header.h,则手动建立bridging header "x-Bridging-Header.h"。而后须要进入 YourTarget -> Build Settings -> Swift Compiler-Code Generation 这个设置项里面,把你的 .h 文件的【路径】(例如,$(SRCROOT)/x/x-Bridging-Header.h,$(SRCROOT)为工程所在文件路径)输入到 Objective-C Bridging Header 里面。

 

4、设置编译选项及引入Charts

1.设置编译选项

找到Build Settings -> Embedded Content Contains Swift Code 选项,设置为Yes,以下图:


设置编译选项
2.在桥接文件中引入Charts

以下图:


引入 Charts
3.在ViewController.m中引入相关头文件

以下图:


引入头文件

引入完成以后,编译一下,若是有错,Clean一下再次编译,编译没有错误说明导入成功.

 

4. 若是出现相似  The file “XXX.app” couldn’t be opened because you don’t have permission to view it.的错误

形成的缘由:

  info文件中的字段Executable file 与 build settings栏中的Packaging中的Product Name 不一致就会致使上述截图的问题

解决办法:

  将info.plist的文件中的Executable.file中的文件修改成:$(PRODUCT_NAME)

  修改以前

  

修改以后:

  

 

5、测试

ViewController.m中进行测试,代码以下:

BarChartView *chatView = [[BarChartView alloc] initWithFrame:CGRectMake(10, 100, 300, 300)]; [self.view addSubview:chatView];

运行效果以下:


运行结果

因为没有给数据,因此显示的是No chart date aviailable.
至此,集成Charts完毕!

相关文章
相关标签/搜索