我正在尝试通过按钮更改定义为 Storyboard转场(不是以编程方式构建)的弹出窗口的默认弹出窗口箭头颜色。下图为白色默认弹出框箭头:
当我添加
navigationController?.popoverPresentationController?.backgroundColor = myNavBarColor
到popover中呈现的UIViewController
的viewWillAppear
方法,结果如下:
在 UIViewController
的 prepareForSegue
方法中为 UIPopoverPresentationController
定义一个新的 UIPopoverBackgroundView
类是“太晚了”。
我希望有一个简单的修复程序(使用与 popover 相同的 Storyboard segue)来解决这样一个常见问题。
最佳答案
设置 viewController 的 popoverPresentationController 的背景颜色:
let viewController = YOUR_VIEW_CONTROLLER
viewController.modalPresentationStyle = .popover
if let presentation = viewController.popoverPresentationController {
presentation.backgroundColor = UIColor.white
}
present(viewController, animated: true, completion: nil)
关于ios - 更改从 Swift 中的 Storyboard创建的弹出窗口的箭头颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36883602/