十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
這篇文章給大家分享的是有關iOS中導航欄pop返回時出現(xiàn)黑塊怎么辦的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設計制作、成都做網(wǎng)站與策劃設計,大竹網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設10多年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:大竹等地區(qū)。大竹做網(wǎng)站價格咨詢:13518219792問題描述:
導航欄正常從A頁面push到B頁面,從B頁面pop返回A頁面時遇到過渡過程中導航欄出現(xiàn)黑塊的問題。
如截圖所示:

問題原因:
A界面導航欄被影藏,B頁面的導航欄存在。過渡的時候沒有動畫。
解決方案:
1.在A頁面中添加影藏導航過渡動畫
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(true, animated: true) //避免的出現(xiàn)返回時導航欄的黑塊
}override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
self.navigationController?.setNavigationBarHidden(false, animated: true)
}注意:如果使用self.navigationController.isNavigationBarHidden = true 就會出現(xiàn)黑塊問題。 如果A頁面在tableViewController中,切換tab時就有可能導致該界面閃動。
優(yōu)點,不用在自push中再去設置每一個過渡
2.在B頁面添加過渡動畫
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
self.navigationController?.setNavigationBarHidden(true, animated: true)
}缺點:在每一個子頁面(包括子頁面的子頁面)中都需要設置
3.設置window的背景顏色為主題色,這樣就不會出現(xiàn)黑塊,但是還是會出現(xiàn)分層和界面不協(xié)調(diào)的問題。不建議使用
感謝各位的閱讀!關于“iOS中導航欄pop返回時出現(xiàn)黑塊怎么辦”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。