1. 程式人生 > >ios開發之檢視控制器(UIViewController)-- 詳解

ios開發之檢視控制器(UIViewController)-- 詳解

由於本人也是初學ios開發,下面分享一下本人在自學中關於檢視控制器(UIViewController)的多種建立方法的總結(詳解)。

控制器的建立方式

注意: 以下程式碼都是在(Xcode 6.4 ios 8.4)  AppDelegate.m檔案的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions這個方法中

1.1 通過storyboard建立

* 建立project

* 刪除原有的控制器及其storyboard


* 建立自定義的storyboard


* 設定storyboard的屬性 


* 新建一個控制器的類



* 關聯自定義控制器和自定義storyboard


* 設定自定義的storyboard為第一控制器


* AppDelegate.m檔案的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 這個方法中 新增如下程式碼

// 1.通過storyboard新增控制器

UIStoryboard *myStoryboard = [UIStoryboard

storyboardWithName:@"my"bundle:nil];

// 2. 設定控制器獲取storyboard的第一個控制器(箭頭所指的控制器)

//   注意設定→   控制器的屬性 is Initial View Controller

MyViewController *myViewController = [myStoryboardinstantiateInitialViewController];

// 3. 設定UIWindowrootViewControllermyViewController

self.window.rootViewController = myViewController;


然後執行(command + R)

如果出現崩潰 且出現如下所示


則設定 main interface 為我們的自定義控制器 就可以正常運行了


正常執行結果圖如下


1.2 通過xib建立控制器

* 建立一個新的xib檔案(還是同一個專案, 但是切記剛才上面的程式碼要註釋)


* 建立一個xib的類 (最好和xib檔案去掉.xib同名)


* 給xib 拖拉一個UIView控制元件並設定屬性


* 關聯xib 和 我們自定義的MyView 類



* 連好以後效果如下 (選中右擊可檢視)

 

//通過xib建立控制器

AppDelegate.m檔案的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 這個方法中 新增如下程式碼

// 1.載入xib

MyView *one = [[MyViewalloc]initWithNibName:@"MyView"bundle:nil];

// 2.設定windowrootViewControllerone

self.window.rootViewController = one;


然後執行(command + R)執行效果如下

 

1.3 通過純程式碼建立控制器

//  AppDelegate.m檔案的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 這個方法中 直接註釋掉剛才的程式碼 然後寫入如下程式碼

// 1.建立一個控制器

UIViewController *controller = [[UIViewControlleralloc] init];

// 設定控制器的背景顏色為紅色

      controller.view.backgroundColor = [UIColorredColor];

// 2.設定windowrootViewControllercontroller

self.window.rootViewController = controller;


然後執行(command + R)執行效果如下


如果還有上面不清楚的可以直接下載原始碼

連結: http://pan.baidu.com/s/1jGrOyuq 密碼: 3whj