自定義并使用自己的ViewController

Xcode6以后,在新建工程時(shí)已經(jīng)沒有了以前的Empty Application,往往新建的是Single View Application,而這個(gè)模板卻自帶了ViewController。在實(shí)際的應(yīng)用中,我們往往需要自定義ViewController,要使用更易理解的命名,這時(shí)候,系統(tǒng)默認(rèn)的這個(gè)家伙就顯得有些煩人了,作為一個(gè)重度強(qiáng)迫癥,自然是不能忍受的。但是如果只是簡(jiǎn)單地將ViewController.h和ViewController.m文件刪除,然后新建自己的ViewController并使用,往往不能如人所愿,會(huì)出現(xiàn)各種各樣的問題,拋出NSInternalInconsistencyException異常神馬的。

經(jīng)過各種折騰研究,總結(jié)出一套方案,解決了這個(gè)問題。

  • 首先刪除ViewController.h和ViewController.m文件。

  • 打開 Info.plist,刪除里面的Main storyboard file base name...

  • 新建自己的ViewController文件,產(chǎn)生.h和.m文件(如MainViewController.h和MainViewController.m)。

  • 編寫這兩個(gè)文件,實(shí)現(xiàn)你的要求。

  • 向AppDelegate.m導(dǎo)入剛才新建并編輯過的.h文件:

#import "MainViewController.h"
  • 修改AppDelegate.m文件中的application方法:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

self.window.rootViewController = [[MainViewController alloc]init];

[self.window makeKeyAndVisible]; 

return YES;

}

就是這樣。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 最近一朋友正準(zhǔn)備跳槽,就從各處搜索整理一些基礎(chǔ),便于朋友復(fù)習(xí),也便于自己復(fù)習(xí)查看. 1. 回答person的ret...
    smile麗語閱讀 1,802評(píng)論 0 7
  • 1,NSObject中description屬性的意義,它可以重寫嗎?答案:每當(dāng) NSLog(@"")函數(shù)中出現(xiàn) ...
    eightzg閱讀 4,190評(píng)論 2 19
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,923評(píng)論 18 139
  • 1.尺寸適配1.原因 iOS7中所有導(dǎo)航欄都為半透明,導(dǎo)航欄(height=44)和狀態(tài)欄(height=20)不...
    LZM輪回閱讀 6,143評(píng)論 1 4
  • github demo 下載地址,有問題請(qǐng)?jiān)u論或者在git上提交問題 1. 用到的類,基本和HomeKit差不多 ...
    Dylan大魔王閱讀 453評(píng)論 0 1