使用純代碼顯示一個空白的視圖

由於現在的Xcode新建的工程是默認使用storyboard來創建界面的,這篇文章介紹如何使用純代碼來創建初始界面。

一、打開Xcode新建一個基於單視圖的iOS工程,創建成功後展開項目導航會看到一個名字爲Main.storyboard的文件,刪除該文件。如下圖:


二、選中info.plist文件,展開其中的內容,把屬性項Main storyboard file base name刪除。如下圖:


三、設置應用程序的rootViewController。創建工程時,自動生成了一個名字爲ViewController的UIViewController類文件,這裏把該類設置爲rootViewController。

打開AppDelegate.m文件,引入ViewController的頭文件,修改- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions,代碼如下:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    
    _window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    
    ViewController *viewController = [[ViewController alloc] init];
    _window.rootViewController = viewController;
    
    [_window makeKeyAndVisible];
    
    return YES;
}

四、重載ViewController的loadView方法。

loadView是使用代碼生成視圖時,視圖第一次載入時調用的方法,使用該方法生成ViewController的View.代碼如下

- (void)loadView {
    
    self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    [self.view setBackgroundColor:[UIColor whiteColor]];
    
    UILabel *label = [[UILabel alloc] initWithFrame:self.view.frame];
    [self.view addSubview:label];
    
    [label setTextAlignment:NSTextAlignmentCenter];
    [label setText:@"Hello World!"];
}
這裏生成了控制器的視圖,在視圖上放置了一個跟視圖一樣大的label。運行項目就可以在屏幕中央看到Hello World!的顯示了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章