項目總結八:項目中UIWindow沖突的解決

網絡配圖

項目需求:

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,引起沖突。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,993評論 19 139
  • “自媒體時代,文案是第一生產力!” --上海灘六哥 文案的練習從手抄開始。 一個人的自動自發,是她人生中具有成功者...
    陸震宇閱讀 446評論 0 0
  • 今天一天都很難過。如果說上班時老同事的生日問好讓我有難過。那難過只有5級。最難過的開端是早上公交上曹亞偉給我發的微...
    毛欣與小李閱讀 416評論 1 0
  • 一提到自己在家做飯,我們都會覺得實惠又衛生。宴請賓客的時候也常自謙,“沒有飯店的好吃,但勝在食材新鮮、放心。”大部...
    花漸醒閱讀 329評論 0 0
  • 有的時候,我會在心里偷著樂,想想身邊有這么一些可愛出色的同事,自己真的特別幸運。 今天說的是小馬。 三年前,小馬從...
    小easy閱讀 345評論 4 1