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完畢!

相關文章
相關標籤/搜索