UIAlertController popoverPresentationController覆盖源视图



我正在设置UIAlertController的属性,如下所示:

alertController.modalPresentationStyle = .popover
alertController.popoverPresentationController?.sourceView = sourceView
alertController.popoverPresentationController?.sourceRect = sourceView.bounds

在iPad上显示此alertController时,会按预期显示弹出框,弹出框箭头的尖端正好位于sourceView的中心。然而,这掩盖了我的sourceView的部分内容。我能做些什么让内容不被覆盖吗?例如,如果箭头指向下方,则箭头尖端将位于sourceView的顶部。如果箭头指向上,则箭头尖端将位于我的sourceView的底部。我可以操纵sourceRect,但我不能提前知道箭头的方向。

箭头应指向sourceRect相对于sourceView的外部。当您将sourceView.bounds作为sourceRect时,它应该是整个源视图。所以不应该重叠。

在那里设置一个断点,然后逐步检查并验证一切是否如您所愿。

相关内容

  • 没有找到相关文章

最新更新