項目需求:
1、項目中加入手勢密碼
2泻轰、項目中添加緊急通知,如有緊急通知的話顯示在頁面。
分析:
手勢密碼是加載在UIWindow上的,而緊急通知的話顯示出來最好的方式也是顯示在window上向瓷,如果兩個同時顯示的話,會提示舰涌,會報找不到'Application windows are expected to have a root view controller at the end of application launch'猖任,說明沒有找到rootView。
解決辦法:
因為在編譯的時候會提示編譯錯誤瓷耙,這里的解決方法是加一個標(biāo)志位showWindows,目前用的userdefault,寫成單例會更好超升,在啟動
1、- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{}中設(shè)置為no,
2哺徊、在手勢密碼輸入驗證之后設(shè)置為yes,同時發(fā)送一個通知
3室琢、在要顯示的控制器里面,注冊通知落追,收到通知時盈滴,執(zhí)行方法判斷標(biāo)志位的值,為yes時轿钠,判斷有沒有值要顯示
4巢钓、當(dāng)程序進(jìn)入后臺的時候,- (void)applicationDidEnterBackground:(UIApplication *)application{}疗垛,設(shè)置為no症汹,本地保存了標(biāo)志位,如果不處理贷腕,下次從后臺直接為yes,引起沖突背镇。