相关疑难解决方法(0)

iOS 13-UIPopoverPresentationController sourceview内容在箭头中可见

当我在UIPopoverPresentationController中显示一些视图并将其显示为弹出窗口时

popoverCon?.modalPresentationStyle = UIModalPresentationStyle.popover
Run Code Online (Sandbox Code Playgroud)

内容已向上移动,并且箭头中显示了一部分。

在此处输入图片说明

此外,我在弹窗周围有边界

popoverCon?.view.layer.borderColor = .orange
popoverCon?.view.layer.borderWidth = 1.0;
popoverCon?.view.layer.cornerRadius = 10.0;
popoverCon?.view.layer.masksToBounds = false;
Run Code Online (Sandbox Code Playgroud)

它没有朝着箭头所在的部分显示,但在箭头的尖端显示了少许边界线。

在此处输入图片说明

在iOS 12之前,它一直工作良好,但在iOS 13中,此问题即将出现。

关于如何解决这个问题有什么建议吗?

popover uipopoverpresentationcontroller ios13

9
推荐指数
3
解决办法
1324
查看次数

iOS:在iOS13中显示弹出框的问题

我显示的弹出窗口现在显示不正确。箭头一侧缺少一条线。我们可以检查箭头的末端是否有一块黑色。我认为里面的视图太长了。

显示弹出窗口的代码:

   _popoverController = UIPopoverController(contentViewController: navController)
   _popoverController?.delegate = self

   let rect = slotCollectionView.cellForItem(at: indexPath)!.frame
   self._popoverController?.backgroundColor = UIColor.init(rgb: Int(quaternaryColorHexa))
   self._popoverController?.present (from: rect, in: self.slotCollectionView, permittedArrowDirections: UIPopoverArrowDirection.any, animated: true) 
Run Code Online (Sandbox Code Playgroud)

初始化Popover的代码:

override func viewDidLoad()
{
    super.viewDidLoad()

    self.preferredContentSize = contentSize()
    self.navigationController!.preferredContentSize = self.preferredContentSize;

    peopleTableView.isScrollEnabled = true
    peopleTableView.bounces = true
    peopleTableView.tableFooterView = UIView(frame: CGRect(x: 0, y: 0, width: 0, height: 0))
    peopleTableView.tableFooterView?.isHidden = true
    peopleTableView.backgroundColor = UIColor.init(rgb: Int(quinquenaryColorHexa))

    self.view.backgroundColor = UIColor.init(rgb: Int(quinquenaryColorHexa))
    self.view.layer.cornerRadius = 13.0
    self.view.layer.borderWidth = 1.5
    self.view.layer.borderColor = UIColor.init(rgb: Int(quaternaryColorHexa)).cgColor 
Run Code Online (Sandbox Code Playgroud)

iOS12的显示:
iOS12
iOS13的显示:
iOS13

uipopovercontroller ios swift

7
推荐指数
1
解决办法
1123
查看次数