UIPopoverController 显示在错误的位置

UIPopoverController displays at wrong position

我想在点击标签时显示 UIPopoverController。所有元素都使用 AutoLayout 布局。

// In TorHeimPopoverViewController.swift
// self.view is TorHeimPopoverViewController's view

popover.presentPopoverFromRect(label.frame, inView: self.view, permittedArrowDirections: UIPopoverArrowDirection.Left, animated: true)

它显示在另一个 UIPopoverController (TorHeimPopoverViewController) 和 Container

MainAppView -> TorHeimPopoverViewController -> ContainerView

我该如何解决这个问题?

问题是,inView 参数用于此目的是错误的。 label.frame 的 rect 与它所在的 ContainerView 有关。

例如,当 label.framex = 300, y = 100 时,它将采用这些坐标,但使用 self.view 作为原点而不是容器。