更改从Swift中的故事板创建的弹出窗口的箭头颜色

时间:2016-04-27 07:51:37

标签: ios swift swift2 popover

我试图更改默认的弹出框箭头颜色,该弹出框定义为故事板segue(不是以编程方式构建)从按钮开始。下图显示了白色默认弹出箭头:

enter image description here

当我添加

navigationController?.popoverPresentationController?.backgroundColor = myNavBarColor

到popover中显示的viewWillAppear的{​​{1}}方法,结果如下:

enter image description here

在主UIViewController的{​​{1}}方法中为UIPopoverBackgroundView定义新的UIPopoverPresentationController课程为#34;太晚了"。

对于这样一个常见问题,我希望能有一个简单的解决方案(与popover相同的故事板)。

2 个答案:

答案 0 :(得分:1)

设置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)

答案 1 :(得分:0)

你也可以在popoverPresentationController里面的视图中设置它

override func viewDidLoad()
{
    super.viewDidLoad()
    popoverPresentationController?.backgroundColor = view.backgroundColor
}