在IOS程序中創建view有六種方式
首先創建一個GLViewController類,繼承UIViewController。
然後進入GLAppDelegate.m,在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中編寫代碼。
1.第一種方式:沒有xib和storyboard
(如果沒有xib和storyboard, 會自動創建一個空白的view做爲控制器的view)
GLViewController *vc = [[GLViewController alloc] init];
2.通過 storyboard 創建
穿件一個storyboard,將storyboard設置成控制器。
如果通過storyboard創建, 會創建箭頭指向view做爲控制器的veiw
如果重寫了控制器的loadview方法, 就不會創建storyboard中描述的view作爲控制器的view, 而是創建一個空白的veiw做爲控制器的veiw
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Test" bundle:nil];
GLViewController *vc = [storyboard instantiateInitialViewController];
3.有指定xib情況下創建
創建一個Xib,將File`s Owner 中的class改成GLViewController,右鍵點擊File`s Owner 將view連線到view。
如果通過xib, 會創建xib中描述的veiw做爲控制器的veiw
GLViewController *vc = [[GLViewController alloc] initWithNibName:@"One" bundle:nil];
4.有同名xib情況
如果有同名的xib, 會自動找到同名xib中描述的view做爲控制器的veiw,只需寫出以下代碼即可。
GLViewController *vc = [[GLViewController alloc] init];
5.有同名去掉Controller的 xib情況
// 如果有有同名去掉Controller的xib, 會自動找到該xib的view做爲控制器的view,只需寫出以下代碼即可。
GLViewController *vc = [GLViewController alloc] init];
6.重寫控制器的loadveiw方法
如果重寫了控制器的loadview方法, 就不會去加載創建同名去掉controller的xib和同名的xib, 而是創建一個空白的veiw做爲控制器的veiw
GLViewController *vc = [[GLViewController alloc] init];
以下示意圖說明了創建View的過程