網絡配圖
項目需求:
1、項目中加入手勢密碼
2、項目中添加緊急通知,如有緊急通知的話顯示在頁面。
分析:
手勢密碼是加載在UIWindow上的,而緊急通知的話顯示出來最好的方式也是顯示在window上,如果兩個同時顯示的話,會提示,會報找不到'Application windows are expected to have a root view controller at the end of application launch',說明沒有找到rootView。
解決辦法:
因為在編譯的時候會提示編譯錯誤,這里的解決方法是加一個標志位showWindows,目前用的userdefault,寫成單例會更好,在啟動
1、- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{}中設置為no,
2、在手勢密碼輸入驗證之后設置為yes,同時發送一個通知
3、在要顯示的控制器里面,注冊通知,收到通知時,執行方法判斷標志位的值,為yes時,判斷有沒有值要顯示
4、當程序進入后臺的時候,- (void)applicationDidEnterBackground:(UIApplication *)application{},設置為no,本地保存了標志位,如果不處理,下次從后臺直接為yes,引起沖突。