資源描述:
《iPhone開(kāi)發(fā)之基礎(chǔ)教程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、歡迎來(lái)到iPhone的世界關(guān)于本書必要條件l運(yùn)行Leopard的基于Intel的Macintosh計(jì)算機(jī)l注冊(cè)成為iphone開(kāi)發(fā)人員,下載iphoneSDKl關(guān)于并標(biāo)準(zhǔn)版與企業(yè)版問(wèn)題必備知識(shí)lObject-C編程知識(shí)liPhone本身的熟悉(特性,界面,程序外觀)Iphone程序有何不同l只有一個(gè)正在運(yùn)行的應(yīng)用程序n執(zhí)行代碼時(shí)唯一的運(yùn)行程序l只有一個(gè)窗口n應(yīng)用程序與用戶所有交互在此完成l受限訪問(wèn)n程序訪問(wèn)權(quán)限(文件讀寫,網(wǎng)絡(luò)端口訪問(wèn),管理員操作)l有限的響應(yīng)時(shí)間n較快的響應(yīng)時(shí)間n確保用戶退出時(shí)不會(huì)丟失數(shù)據(jù)l有限的屏幕大
2、小n480*320l有限的系統(tǒng)資源n內(nèi)存不足,可用內(nèi)存限制l缺少Cocoa工具n垃圾回收l(shuí)新屬性l與眾不同的方法n沒(méi)有鍵盤鼠標(biāo)的交互方式本書內(nèi)容準(zhǔn)備開(kāi)始吧2創(chuàng)建基本項(xiàng)目在Xcode中設(shè)置項(xiàng)目啟動(dòng)Xcode創(chuàng)建新項(xiàng)目File->NewProjectiphone->application->項(xiàng)目模板View-BasedApplicationChoose保存項(xiàng)目窗口ClassesObejct-C類OtherSources.pchmain.mResources.xib.plistxibFramewWorksProductsInt
3、erfaceBuider簡(jiǎn)介Xib文件代碼UIButton*myButton=[[UIButtonalloc]initWithFrame:aRect];界面對(duì)象組件面板拖Nib文件的構(gòu)成視圖中添加標(biāo)簽雙擊添加文本保存SaveBuildBuildandRunInspector窗口Iphone美化.pngInfo.plist3處理基本交互模型-視圖-控制器范型MVCM保存應(yīng)用程序數(shù)據(jù)的類設(shè)計(jì)一些Object-C類來(lái)保存應(yīng)用程序的數(shù)據(jù)V窗口,控件和其他用戶可以看到并能與之交互的元素組成部分C將模型與視圖綁定在一起,確定如何處理
4、用戶輸入的應(yīng)用程序邏輯開(kāi)發(fā)人員創(chuàng)建的類和特定于應(yīng)用程序的類組成通用控制器類確保實(shí)現(xiàn)最大可重用性創(chuàng)建項(xiàng)目創(chuàng)建視圖控制器UIViewController子類輸出口IBOutletUIButton*myButton;操作方法(IBAction)doSomething:(id)sender;添加到接口#import@interfaceButton_FunViewController:UIViewController{IBOutletUILabel*statusText;}@property(reta
5、in,nonatomic)UILabel*statusText;-(IBAction)buttonPressed:(id)sender;@end垃圾收集如果定義的屬性是一個(gè)對(duì)象,通??蛇x屬性應(yīng)該指定為retain額外代碼的生成開(kāi)銷nonatomic點(diǎn)表示法用于修改訪問(wèn)添加到實(shí)現(xiàn)#import“Button_FunViewController.h”-@implementationButton_FunViewController@synthesizestatusText;-(IBAction)buttonPressed:(i
6、d)sender{NSString*title=[sendertitleForState:UIControlStateNormal];NSString*newText=[[NSStringalloc]initWithFormat:@”%@buttonpressed.”,title];statusText.text=newText;[newTextrelease];}-(void)dealloc{[statusTextrelease];[superrelease];}@end簡(jiǎn)便方法工廠方法如果未分配它或者保留它,則不要釋
7、放它。自動(dòng)釋放的代價(jià)消息嵌套使用應(yīng)用程序的委托Button_FunAppDelegate.h#import@class//注意Button_FunViewController;@interfaceButton_FunAppDelegate:NSObject{IBOutletUIWindow*window;IBOutletButton_FunViewController*viewController;}@property(nonatomic,ret
8、ain)UIWindow*window;@property(nonatomic,retain)Button_FunViewController*viewController;@endButton_FunAppDelegate.m#import“Button_FunAppDelegate.h”#import”Butto