Apple-APP應用程式基本架構

Apple-APP應用程式基本架構

main.m

#import <UIKit/UIKit.h>

#import "MyAppDelegate.h"

int main(int argc, char *argv[])

{

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

int retVal = UIApplicationMain(argc, argv, nil, @"MyAppDelegate");

[pool release];

return retVal;

}

※UIApplicationMain函數為建立新的應用程序提供主入口點,建立新的應用程序實例和委托。

第三、四個參數為指定主應用程序類的名稱與它的委托,若省略第三個參數則預設使用標准的UIApplication。

UIApplicationMain還建立應用程序的事件循環,事件循環在main.m中設定。

應用程序委托

applicationDidFinishLaunching:方法。
當應用程序實例化後,首先被觸發的,啟動時,可以在該方法內建立基本窗口,設定它的內容,並讓它成為應用程序的關鍵回應者

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

// Override point for customization after application launch.

[self.window initWithFrame:[[UIScreen mainScreen]bounds]];

[self.window makeKeyAndVisible];

return YES;

}

applicationWillTerminate:方法。

可以在將控制權交回SpringBoard之前,用該方法保存、更新資料和關閉文件。

applicationDidReceiveMemoryWarning:方法。

視圖控制器

是控制應用程序如何運作的核心。

通常是在視圖控制器中實現在應用程序如何回應選擇、按下以及觸發感應器等動作。

。loadView、viewDidLoad

。shouldAutorotateToInterfaceOrientation

。viewWillAppear、viewDidAppear

NSBundle類

透過這個類,可以訪問應用程序束中存儲的文件,使用NSBundle可以更輕鬆的定位應用程序的根文件夾,

以及導航到自定的子文件夾 以指向並加載聲音、圖像和資料文件等內置資源。