生活随笔
收集整理的這篇文章主要介紹了
iPhone Three20软件引擎之构建开发环境与HelloWorld
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
?1:原文摘自:http://blog.csdn.net/xys289187120/article/details/7017432
雨松MOMO原創(chuàng)文章如轉(zhuǎn)載,請注明:轉(zhuǎn)載自 雨松MOMO的博客 原文地址:http://blog.csdn.net/xys289187120/article/details/7017432 親愛的朋友們,如果你現(xiàn)在在做IOS 軟件開發(fā),不妨來看看Three20這套框架。如果你對它還比較陌生?MOMO在這里告訴你它絕對是一個IOS 軟件開發(fā)的利器,有了它絕對讓你的軟件事半功倍。three20框架的前身是facebook ?iPhone 客戶端。 后來facebook將其開源了,就有了three20這個框架。據(jù)說開發(fā)這套引擎的這個程序大牛 facebook為了挖他直接把他所在的公司買下來了,我心里就琢磨這人也太牛了吧。做了一個客戶端 開源后直接就變成流行引擎了。真的是讓我輩望塵莫及啊~~ 哈哈 廢話不多說了我們進(jìn)入正題。 在Xcode4上構(gòu)建three20框架 首先進(jìn)入Three20官網(wǎng)去下載最新版本 http://three20.info/roadmap/1.0.6.2 進(jìn)入官網(wǎng)后,如下圖所示點(diǎn)擊Download下載最新版本,目前最新版本為1.0.6.2。 下載完畢后解壓縮,由于Three20目前別說國內(nèi)的資料少了,國外的資料都不多。不過開發(fā)包中附帶了幾個Demo,MOMO 先在這里贊一下!這兩天我就是靠這幾個Demo來學(xué)習(xí)的。Demo的路徑在下載包samples 文件夾中,一共9個Demo,建議想用Three20框架開發(fā)的盆友們 一定要好好讀一讀這幾個Demo,比去網(wǎng)上找資料強(qiáng)多了!? 大家看看官網(wǎng)的說明, 如何在Xcode4上添加Three20框架。我懶得翻譯了~~ Xcode 4 Transition Guide Apple is aiming for Xcode 4 to be the primary iOS development environment and, as a result, many will need to transition from Xcode 3.2 to Xcode 4. This guide has been put together in order to help you migrate your apps to Xcode 4 successfully.
What you need to do For existing projects If you want to start using Xcode 4 with an existing project made using Xcode 3.2.#, all you need to do to update your project is run ttmodule again like so:
重點(diǎn)在這里,先創(chuàng)建好一個普通的IOS 工程,打開mac電腦的終端去執(zhí)行下面這段python 腳本 three20/sre/scripts/ttmodule.py : 須要執(zhí)行的腳本文件 path/to/your/project.xcodeproj ?: ?IOS 工程路徑 這里強(qiáng)調(diào)一下,不要使用cd ?到scripts路徑下在去執(zhí)行這段腳本,因為這樣的話有時候會提示無效的命令,所以大家還是老老實實去輸入自己的完整路徑吧。? view plain
>?python?three20/src/scripts/ttmodule.py?-p?path/to/your/project/project.xcodeproj?Three20?--xcode-version=4?? python腳本執(zhí)行完畢后,就應(yīng)該環(huán)境就搭建完畢了 ,快快打開工程檢查一下,如下圖所示,安裝成功后打開工程后在Frameworks中會出現(xiàn)很多Three20的相關(guān)的東西。 如果到這一步還是沒有出現(xiàn)這些Frameworks文件,那么請仔細(xì)閱讀上面的博文檢查一下自己的步驟。 到這一步就徹底安裝成功了,下面開始構(gòu)建我們第一個項目HelloWorld。 view plain
#import?<UIKit/UIKit.h>?? ?? int?main(int?argc,?char?*argv[])?? {?? ????NSAutoreleasePool?*pool?=?[[NSAutoreleasePool?alloc]?init];?? ????int?retVal?=?UIApplicationMain(argc,?argv,?nil,?@"Three20AppDelegate");?? ????[pool?release];?? ????return?retVal;?? }?? 學(xué)過IOS開發(fā)的朋友絕對不會陌生,在項目中須要使用Three20庫的時候須要import一下~ #import? <Three20/Three20.h>
URL 簡直就是three20 亮點(diǎn)中的亮點(diǎn),實在是太好用了。有可能是因為facebook是互聯(lián)網(wǎng)公司的原因吧,他們的引擎的原理都很像www.xx.com 這種網(wǎng)址的結(jié)構(gòu),因為手機(jī)不像PC 不可能同時顯示多個頁面,那么用URL這種方式去切換界面實在是太給力了~會省下很多邏輯判斷切換界面的代碼,直接去維護(hù)這個URL 就可以,由于本章主要是構(gòu)建Three20框架,所以MOMO在這里只帶大家學(xué)習(xí)入門的知識, 后期我肯定會詳細(xì)的介紹TTURLMap 這個類,因為它實在是太好用了,哇咔咔. 舉個例子 tt://Myview/1 tt://Myview/2 上面是兩個軟件界面,實現(xiàn)界面的切換的方法就好比我們在瀏覽器中輸入網(wǎng)址一樣,輸入網(wǎng)址1 就進(jìn)1 輸入網(wǎng)址2 就進(jìn) 2,一切事件的處理three20 都幫我們做了。 view plain
#import?"Three20AppDelegate.h"?? #import?"MyViewController.h"?? @implementation?Three20AppDelegate?? ?? ?? -?(BOOL )application:(UIApplication?*)application?didFinishLaunchingWithOptions:(NSDictionary?*)launchOptions?? {?? ???? ????//創(chuàng)建導(dǎo)航條?? ????TTNavigator*?navigator?=?[TTNavigator?navigator];?? ????navigator.persistenceMode?=?TTNavigatorPersistenceModeAll;?? ????navigator.window?=?[[[UIWindow?alloc]?initWithFrame:TTScreenBounds()]?autorelease];?? ??????? ?????? ????//TTURLMap?非常重要的一個屬性?? ????//界面的點(diǎn)擊切換完全取決與它的設(shè)定?? ????TTURLMap*?map?=?navigator.URLMap;?? ?????? ????//如果須要訪問wab頁面的話?就必需添加?? ????[map?from:@"*"?toViewController:[TTWebController?class]];?? ????? ????//拼一個url?意思是如果訪問?"tt://MyView"?會進(jìn)入?MyViewController?class?? ????[map?from:@"tt://MyView"?toSharedViewController:[MyViewController?class]];?? ?????? ?????? ????if?(![navigator?restoreViewControllers])?{?? ????????//打開上面設(shè)置的url?? ????????[navigator?openURLAction:[TTURLAction?actionWithURLPath:@"tt://MyView"]];?? ????}?? ?????? ????return?YES;?? }?? ?? ?? ?? -?(void)dealloc?? {?? ????? ????[super?dealloc];?? }?? ?? @end?? 由于在程序入口中就將URL 指向這里 ,所以在這里添加顯示view等等。 view plain
#import?"MyViewController.h"?? #import?<Three20Style/UIColorAdditions.h>?? @implementation?MyViewController?? ?? -?(void)loadView?{?? ??????[super?loadView];?? ????//創(chuàng)建一個可滑動的view?? ????UIScrollView*?scrollView?=?[[[UIScrollView?alloc]?initWithFrame:TTNavigationFrame()]?autorelease];?? ????scrollView.autoresizesSubviews?=?YES;?? ????scrollView.autoresizingMask?=?UIViewAutoresizingFlexibleWidth?|?UIViewAutoresizingFlexibleHeight;?? ????//背景顏色?? ????scrollView.backgroundColor?=?[UIColor?whiteColor];?? ????self.view?=?scrollView;?? ?? ????//標(biāo)題內(nèi)容?? ????self.title?=?@"雨松MOMO程序開發(fā)"?;?? ???? ????//設(shè)置雨松MOMO頭像圖片?? ????CGRect?frame??=?CGRectMake(100,?10,?120,?120);?? ????TTImageView?*imageView?=?[[TTImageView?alloc]?initWithFrame:frame];?? ????UIImage?*image?=?[UIImage?imageNamed:@"1.jpg"];?? ????imageView.defaultImage?=?image;?? ????[scrollView?addSubview:imageView];?? ?????? ????//view風(fēng)格?邊框?顏色?? ????UIColor*?black?=?RGBCOLOR(158,?163,?172);?? ????//view風(fēng)格?? ????TTStyle*??style?=?[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ???????????????????????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????????????????????????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]];?? ?????? ????frame?=?CGRectMake(5,?150,?310,?150);?? ????//新建一個TTView?將設(shè)置的風(fēng)格賦值給它?? ????TTView?*view?=?[[[TTView?alloc]?initWithFrame:frame]?autorelease];?? ????//背景顏色?? ????view.backgroundColor?=?[UIColor?whiteColor];?? ????//賦值風(fēng)格?? ????view.style?=?style;?? ?????? ????//顯示字符串?支持html語言?? ????NSString?*?text?=?@"愛加班,愛代碼,愛HelloWorld?,?愛學(xué)習(xí),愛鉆研,愛學(xué)無止境?愛玩游戲更愛做游戲,我是雨松MOMO,哇咔咔~?我在參加2011年博客大賽?<a?href=\"http://blog.51cto.com/contest2011/3361352\">點(diǎn)擊為MOMO投上寶貴的一票</a>";?? ?????? ????frame?=?CGRectMake(10,?10,?290,?150);?? ?????? ????//TTStyledTextLabel?很給力啊這個?哈哈!?? ????TTStyledTextLabel*?label?=?[[[TTStyledTextLabel?alloc]?initWithFrame:frame]?autorelease];?? ????label.font?=?[UIFont?systemFontOfSize:17];?? ????label.textColor?=?[UIColor?redColor];???? ????label.text?=?[TTStyledText?textFromXHTML:text?lineBreaks:YES?URLs:YES];?? ????label.contentInset?=?UIEdgeInsetsMake(5,?5,?5,?5);?? ????[label?sizeToFit];?? ????? ????//將label添加入自定義view?? ????[view?addSubview:label];?? ????//將自動一定view?顯示在主view中!?? ????[scrollView?addSubview:view];????? ?? ?????? ?????? ?? }?? ?? ?? ?? @end?? 到這一步,這個簡單的HelloWorld程序就寫完了,我們發(fā)現(xiàn)以前我們用到的高級界面的類基本上Three20都寫了新的方法去繼承,實現(xiàn)更佳好的效果,將麻煩的地方由引擎自身幫我們完成。看一下效果圖。我添加特殊的風(fēng)格View 顯示text 支持html語言 可以在程序中隨意添加網(wǎng)頁鏈接、? 下面MOMO在貼一段官方提供的Demo中的一段代碼,主要是用來設(shè)置View風(fēng)格. 官方一共提供了19種view風(fēng)格,代碼中使用循環(huán)將這19中view 依次顯示在界面中,絕對夠我們開發(fā)IOS應(yīng)用程序啦 哈哈~~所以說官方提供的DEMO 大家一定要好好閱讀喔 哇咔咔~~ view plain
-?(void)loadView?{?? ??UIScrollView*?scrollView?=?[[[UIScrollView?alloc]?initWithFrame:TTNavigationFrame()]?autorelease];?? ????scrollView.autoresizesSubviews?=?YES;?? ????scrollView.autoresizingMask?=?UIViewAutoresizingFlexibleWidth?|?UIViewAutoresizingFlexibleHeight;?? ??scrollView.backgroundColor?=?RGBCOLOR(216,?221,?231);?? ??self.view?=?scrollView;?? ?? ??UIColor*?black?=?RGBCOLOR(158,?163,?172);?? ??UIColor*?blue?=?RGBCOLOR(191,?197,?208);?? ??UIColor*?darkBlue?=?RGBCOLOR(109,?132,?162);?? ?? ??NSArray*?styles?=?[NSArray?arrayWithObjects:?? ????//?Rectangle?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]],?? ?? ????//?Rounded?rectangle?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?? ????//?Gradient?border?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTLinearGradientBorderStyle?styleWithColor1:RGBCOLOR(0,?0,?0)?? ?????????????????????????????????color2:RGBCOLOR(216,?221,?231)?width:2?next:nil]]],?? ?? ????//?Rounded?left?arrow?? ????[TTShapeStyle?styleWithShape:[TTRoundedLeftArrowShape?shapeWithRadius:5]?next:?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?? ????//?Partially?rounded?rectangle?? ????[TTShapeStyle?styleWithShape:?? ??????[TTRoundedRectangleShape?shapeWithTopLeft:0?topRight:0?bottomRight:10?bottomLeft:10]?next:?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?? ????//?SpeechBubble?with?pointer?left?of?the?centre?on?the?top?edge?? ????//?Locations?for?top?edge?are?45?on?the?left,?90?in?the?centre,?134.999?on?the?right?? ????[TTShapeStyle?styleWithShape:[TTSpeechBubbleShape?shapeWithRadius:5??? ????????????????????????????????????????????????????????pointLocation:60?? ???????????????????????????????????????????????????????????pointAngle:90?? ????????????????????????????????????????????????????????????pointSize:CGSizeMake(20,10)]?next:?? ?????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ??????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?? ?????//?SpeechBubble?with?pointer?on?the?extreme?left?on?the?bottom?edge?? ?????//?Locations?for?bottom?edge?are?225?on?the?left,?270?in?the?centre,?314.999?on?the?left?? ????[TTShapeStyle?styleWithShape:[TTSpeechBubbleShape?shapeWithRadius:5??? ????????????????????????????????????????????????????????pointLocation:314?? ???????????????????????????????????????????????????????????pointAngle:270?? ????????????????????????????????????????????????????????????pointSize:CGSizeMake(20,10)]?next:?? ?????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ??????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?????? ????//?SpeechBubble?with?pointer?on?the?bottom?of?the?left?edge?? ????//?Locations?for?left?edge?are?315?on?the?bottom,?0?in?the?centre,?44.999?on?top?? ????[TTShapeStyle?styleWithShape:[TTSpeechBubbleShape?shapeWithRadius:5??? ????????????????????????????????????????????????????????pointLocation:315?? ???????????????????????????????????????????????????????????pointAngle:0?? ????????????????????????????????????????????????????????????pointSize:CGSizeMake(10,20)]?next:?? ?????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ??????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?????? ????//?SpeechBubble?with?pointer?on?the?centre?of?the?left?edge?? ????//?Locations?for?left?edge?are?315?on?the?bottom,?0?in?the?centre,?44.999?on?top?? ????[TTShapeStyle?styleWithShape:[TTSpeechBubbleShape?shapeWithRadius:5?pointLocation:0?? ???????????????????????????????????????????????????????????pointAngle:0?? ????????????????????????????????????????????????????????????pointSize:CGSizeMake(20,10)]?next:?? ?????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ??????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?????? ????//?SpeechBubble?with?pointer?on?the?bottom?of?the?right?hand?edge?? ????//?Locations?for?right?edge?are?135?on?top,?180?in?the?middle,?314.999?on?the?bottom?? ????[TTShapeStyle?styleWithShape:[TTSpeechBubbleShape?shapeWithRadius:5?pointLocation:224?? ???????????????????????????????????????????????????????????pointAngle:180?? ????????????????????????????????????????????????????????????pointSize:CGSizeMake(15,15)]?next:?? ?????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ??????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]],?? ?????? ????//?Drop?shadow?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ????[TTShadowStyle?styleWithColor:RGBACOLOR(0,0,0,0.5)?blur:5?offset:CGSizeMake(2,?2)?next:?? ????[TTInsetStyle?styleWithInset:UIEdgeInsetsMake(0.25,?0.25,?0.25,?0.25)?next:?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTInsetStyle?styleWithInset:UIEdgeInsetsMake(-0.25,?-0.25,?-0.25,?-0.25)?next:?? ????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]]]]],?? ?? ????//?Inner?shadow?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ????[TTSolidFillStyle?styleWithColor:[UIColor?whiteColor]?next:?? ????[TTInnerShadowStyle?styleWithColor:RGBACOLOR(0,0,0,0.5)?blur:6?offset:CGSizeMake(1,?1)?next:?? ????[TTSolidBorderStyle?styleWithColor:black?width:1?next:nil]]]],?? ?? ????//?Chiseled?button?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ????[TTShadowStyle?styleWithColor:RGBACOLOR(255,255,255,0.9)?blur:1?offset:CGSizeMake(0,?1)?next:?? ????[TTLinearGradientFillStyle?styleWithColor1:RGBCOLOR(255,?255,?255)?? ???????????????????????????????color2:RGBCOLOR(216,?221,?231)?next:?? ????[TTSolidBorderStyle?styleWithColor:blue?width:1?next:nil]]]],?? ?? ????//?Embossed?button?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:10]?next:?? ????[TTLinearGradientFillStyle?styleWithColor1:RGBCOLOR(255,?255,?255)?? ???????????????????????????????color2:RGBCOLOR(216,?221,?231)?next:?? ????[TTFourBorderStyle?styleWithTop:blue?right:black?bottom:black?left:blue?width:1?next:nil]]],?? ?? ????//?Toolbar?button?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:4.5]?next:?? ????[TTShadowStyle?styleWithColor:RGBCOLOR(255,255,255)?blur:1?offset:CGSizeMake(0,?1)?next:?? ????[TTReflectiveFillStyle?styleWithColor:darkBlue?next:?? ????[TTBevelBorderStyle?styleWithHighlight:[darkBlue?shadow]?? ????????????????????????shadow:[darkBlue?multiplyHue:1?saturation:0.5?value:0.5]?? ????????????????????????width:1?lightSource:270?next:?? ????[TTInsetStyle?styleWithInset:UIEdgeInsetsMake(0,?-1,?0,?-1)?next:?? ????[TTBevelBorderStyle?styleWithHighlight:nil?shadow:RGBACOLOR(0,0,0,0.15)?? ????????????????????????width:1?lightSource:270?next:nil]]]]]],?? ?? ????//?Back?button?? ????[TTShapeStyle?styleWithShape:[TTRoundedLeftArrowShape?shapeWithRadius:4.5]?next:?? ????[TTShadowStyle?styleWithColor:RGBCOLOR(255,255,255)?blur:1?offset:CGSizeMake(0,?1)?next:?? ????[TTReflectiveFillStyle?styleWithColor:darkBlue?next:?? ????[TTBevelBorderStyle?styleWithHighlight:[darkBlue?shadow]?? ????????????????????????shadow:[darkBlue?multiplyHue:1?saturation:0.5?value:0.5]?? ????????????????????????width:1?lightSource:270?next:?? ????[TTInsetStyle?styleWithInset:UIEdgeInsetsMake(0,?-1,?0,?-1)?next:?? ????[TTBevelBorderStyle?styleWithHighlight:nil?shadow:RGBACOLOR(0,0,0,0.15)?? ???????????????????????width:1?lightSource:270?next:nil]]]]]],?? ?? ????//?Badge?? ????[TTShapeStyle?styleWithShape:[TTRoundedRectangleShape?shapeWithRadius:TT_ROUNDED]?next:?? ????[TTInsetStyle?styleWithInset:UIEdgeInsetsMake(1.5,?1.5,?1.5,?1.5)?next:?? ????[TTShadowStyle?styleWithColor:RGBACOLOR(0,0,0,0.8)?blur:3?offset:CGSizeMake(0,?5)?next:?? ????[TTReflectiveFillStyle?styleWithColor:[UIColor?redColor]?next:?? ????[TTInsetStyle?styleWithInset:UIEdgeInsetsMake(-1.5,?-1.5,?-1.5,?-1.5)?next:?? ????[TTSolidBorderStyle?styleWithColor:[UIColor?whiteColor]?width:3?next:nil]]]]]],?? ?? ????//?Mask?? ????[TTMaskStyle?styleWithMask:TTIMAGE(@"bundle://mask.png")?next:?? ????[TTLinearGradientFillStyle?styleWithColor1:RGBCOLOR(0,?180,?231)?? ???????????????????????????????color2:RGBCOLOR(0,?0,?255)?next:nil]],?? ?? ????//?simple?bottom?only?border?? ????[TTShapeStyle?styleWithShape:[TTRectangleShape?shape]?next:?? ????[TTSolidFillStyle?styleWithColor:RGBCOLOR(255,?255,?255)?next:?? ????[TTFourBorderStyle?styleWithTop:nil?right:nil?bottom:black?left:nil?width:5?next:nil]]],?? ?? ????nil];?? ?? ??CGFloat?padding?=?10.0f;?? ??CGFloat?viewWidth?=?scrollView.width/2?-?padding*2;?? ??CGFloat?viewHeight?=?TT_ROW_HEIGHT;?? ?? ??CGFloat?x?=?padding;?? ??CGFloat?y?=?padding;?? ??for?(TTStyle*?style?in?styles)?{?? ????if?(x?+?viewWidth?>=?scrollView.width)?{?? ??????x?=?padding;?? ??????y?+=?viewHeight?+?padding;?? ????}?? ?? ????CGRect?frame?=?CGRectMake(x,?y,?viewWidth,?viewHeight);?? ????TTView*?view?=?[[[TTView?alloc]?initWithFrame:frame]?autorelease];?? ????view.backgroundColor?=?scrollView.backgroundColor;?? ????view.style?=?style;?? ????[scrollView?addSubview:view];?? ?? ????x?+=?frame.size.width?+?padding;?? ??}?? ?? ??scrollView.contentSize?=?CGSizeMake(scrollView.width,?y?+?viewHeight?+?padding);?? }?? 效果圖 最后歡迎各位盆友可以和MOMO一起討論Three20軟件開發(fā),這兩天學(xué)Three20學(xué)的實在是太爽了~~如果你覺得看得不清楚,MOMO附帶上本章的源碼下載,希望大家可以一起學(xué)習(xí) 哈哈~。哇咔咔~ MOMO愿和 大家好好學(xué)習(xí),大家一起進(jìn)步哈~!!! 下載地址:http://download.csdn.net/detail/xys289187120/3849870 (下載后必需搭建three20環(huán)境成功后才能運(yùn)行~ 因為three20為引用加載,所以程序路徑都是我本機(jī)的請見諒!)
總結(jié)
以上是生活随笔 為你收集整理的iPhone Three20软件引擎之构建开发环境与HelloWorld 的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔 推薦給好友。