了解问题背景:
在iPad上的中,当我使用.actionSheet
作为UIAlertController
的类型时,它会显示为弹出窗口。此外,需要设置一个sourceRect
和sourceView
,否则就会崩溃。
但是,当我在被呈现为formSheet/pageSheet/popover的视图控制器中呈现这样的警报时,警报将不需要sourceRect/sourceView,并且将呈现为iPhone样式的操作表(但不是像在iPad上应该是一个弹出窗口)。它看起来像这样:
iOS 13发生了什么:
iOS13中,这种行为已经改变了。上述情况现在会崩溃,并要求sourceRect/sourceView,正如在iPad上通常发生的那样。也就是说,即使在formSheet/pageSheet/popover VC中呈现警报,它仍将需要sourceRect/sourceView,并且现在将呈现为弹出窗口(而不是iPhone样式的操作表)。
问题:
如果有人知道如何保持警报在相同的操作表样式(但不是弹出窗口)下呈现,我将非常感激。
更新:显然这个问题始于iOS13.2(而不是13.0)