簡體   English   中英

防止在出現警報時顯示視圖控制器

[英]Prevent view controllers from being presented when alert is there

我有一些代碼異步檢查錯誤,如果發生錯誤,它會使用window.rootViewController?.present(...)顯示警報window.rootViewController?.present(...)

有時,這是在顯示視圖控制器之前發生的,因此會在一秒鍾內顯示警報,然后新的視圖控制器會放在其頂部。

事實是,新的VC也可以異步呈現(即,HTTP請求完成時)。

有沒有辦法使警報真正具有模態性? 如何處理呢?

也許這會有所幫助: 檢查UIAlertController是否已經顯示的最佳方法是什么?

我會嘗試檢查presentedViewController屬性是否與nil不同,即使之前曾短暫呈現過該屬性,該屬性也應包含所呈現的視圖控制器。 如果是這種情況,您可以避免提出新的建議。

另一種選擇是將視圖添加到所有內容上方的其他窗口中,以便無法在其上呈現任何內容。 您可以在UIWindowLevelAlert或其他級別上顯示它,並且它將顯示在所有控制器上。 我敢肯定,在它自己的窗口中的一個示例是Instagram中的體積視圖,該視圖向下滑動以覆蓋該視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM