iOS UIPopoverPresentationController定位问题

iOS UIPopoverPresentationController定位问题,ios,uipopovercontroller,Ios,Uipopovercontroller,我试图从一个UIBarButtonItem调用一个UIPopoverPresentationController,但在正确定位它时遇到了问题。特别是在旋转之后 下面是它在肖像中的外观: 这是它在景观中的外观: 请注意旋转前后箭头指向的位置。还请注意,旋转后箭头突然变为灰色(默认设置),尽管我明确表示它是白色的 这是我的实施代码: self.delegate?.popoverMenuWillShow() self.vc = inViewController self.barButtonItem

我试图从一个UIBarButtonItem调用一个UIPopoverPresentationController,但在正确定位它时遇到了问题。特别是在旋转之后

下面是它在肖像中的外观:

这是它在景观中的外观:

请注意旋转前后箭头指向的位置。还请注意,旋转后箭头突然变为灰色(默认设置),尽管我明确表示它是白色的

这是我的实施代码:

self.delegate?.popoverMenuWillShow()
self.vc = inViewController
self.barButtonItem = sender
self.conversationQuery = conversationQuery
self.modalPresentationStyle = UIModalPresentationStyle.Popover

if let view = sender.valueForKey("view") {
    self.popover = self.popoverPresentationController!
    self.popover!.barButtonItem = sender
    self.popover!.permittedArrowDirections = .Up
    self.popover!.backgroundColor = UIColor.whiteColor()
    self.popover!.delegate = self
    self.vc!.presentViewController(self, animated: true, completion: { () -> Void in
        self.delegate?.popoverMenuDidShow()
    })
}
我曾尝试使用.sourceView和.sourceRect来改善它的位置,但在纵向和横向中,它的显示方式总是存在偏差。关于箭头的颜色,我尝试在viewDidLayoutSubviews中将其再次定义为白色,但没有帮助


有人有想法吗?

嘿,你解决过这个问题吗?非常感谢。