開源框架Core Plot的使用

2021-08-25 23:21:27 字數 1950 閱讀 7700

iphone下的圖形框架並不是很多。其中比較知名的就兩個s7graphview和core plot。巧的是兩個都是google的。前者使用簡單,但功能單一,只能畫曲線圖。後者是開源專案,專案仍在不斷更新中,用起來可就複雜多了,而且各個版本會有差異,包括屬性、方法,甚至是類名都有改變。

但時間真的是太老了,居然是09年5月發表的,原文很多地方已經不再適用。因此我費了好大的勁,才把原文中的**跑通了,不敢獨享,與各位共享之。

hg clone core-plot

截至本文發表時止,core plot已經提供了mac標準安裝器

coreplotinstaller_0.2.2.zip,你可以直接用安裝器安裝,可以很方便地把core plot直接以sdk的方式安裝到本機。sdk的使用方法見後一篇博文《core plot sdk的用法》。

二、如何在專案中使用core plot

由於ios的限制,core plot以靜態庫的形式鏈結到iphone應用。在core-plot/framework目錄下存在coreplot-cocoatouch.xcodeproj檔案,這就是乙個靜態庫專案。關於靜態庫的使用,前一篇博文《封裝自己的控制項庫:iphone靜態庫的應用》已經有介紹,使用方法都是一樣的。

2、使用add->existing files…,把coreplot-cocoatouch.xcodeproj新增到新專案中。

3、把libcoreplot-cocoatouch.a最右邊的「add to target」小框勾上。

4、選擇target 「info->general」,新增對專案coreplot-cocoatouch的依賴(引用)。

5、選擇新專案的「info->build」,在「header search paths」中新增core plot標頭檔案搜尋路徑,如:

/users/kmyhy/core-plot/framework。注意要選中「recursive」小勾(英文原文中沒有提這一點)。同時,在other linker flags中要增加兩個選項:-objc和-all_load(英文原文中遺漏了第2個選項)。

6、新建乙個viewcontroller,如testviewcontroller。在本例中,我們勾選了「with xib」選項。在英文原文中,要求在inte***ce build中把xib的view物件由uiview改為cplayerhostingview(其實應當是cpgraphhostingview)。但在這裡,其實沒有必要,只需在源**中修改就可以了。

7、.h檔案:

#import

#import

"coreplot-cocoatouch.h"

@inte***ce

testviewcontroller : uiviewcontroller

@end

8、.m檔案:

#import

"testviewcontroller.h"

@implementation

testviewcontroller

-(nsuinteger

)numberofrecordsforplot:(

cpplot

*)plot

-(nsnumber

*)numberforplot:(

cpplot

*)plot field:(

nsuinteger

)fieldenum recordindex:(

nsuinteger

)index

else

else

} }

- (void

)viewdidload

- (void

)dealloc

@end

仔細檢視**,你會發現原文中的**被我做了一些修改和調整。

附一張core plot框架的類層次圖,便於理解**中各個物件的使用:

注意,右邊各個類的顏色和左邊各個層次的顏色是對應的。

開源框架Core Plot的使用

iphone下的圖形框架並不是很多。其中比較知名的就兩個s7graphview和core plot。巧的是兩個都是google的。前者使用簡單,但功能單一,只能畫曲線圖。後者是開源專案,專案仍在不斷更新中,用起來可就複雜多了,而且各個版本會有差異,包括屬性 方法,甚至是類名都有改變。但時間真的是太老...

開源框架ImageLoader的使用

override public void oncreate public class imagemanager public static void load string imgurl,imageview imageview,displayimageoptions o showstubimage ...

開源框架VTMagic的使用介紹

vtmagic 特性概要 更多特性請參見vtmagicview.h檔案。預覽圖使用 vtmagic支援cocoapods,只需在podfile檔案中新增如下 即可 1 pod vtmagic 整合 關於vtmagic的整合方法主要有以下兩種 1.直接例項化vtmagiccontroller物件,然後...