SourceRectが設定ボタン(歯車アイコンが付いたボタン)であるポップオーバーがあります。 Popoverの位置は、LandscapeLeftを除くすべてのデバイスの向きに適しています。UIPopoverPresentationControllerが正しい位置に表示されない
私はXCodeのインタフェースビルダーからアンカーを設定し、プログラムのソース矩形を設定:
以下var poc = segue.DestinationViewController as PVPencilOptionsController;
poc.ViewModel = this.ViewModel.ColorPicker;
var ppc = (UIPopoverPresentationController)poc.PresentationController;
ppc.SourceRect = this.PVEditIssuePhotoPencilOptionsButton.Frame;
はポップオーバー位置の結果である:/逆さまに(正しい)
肖像:
風景右(正しい):
あなたが見ることができるように、デバイスの向きが横のままの場合風景左(間違った)
は、ポップオーバーの矢印と設定ボタンの間にギャップがあります。
このギャップがどこから来たかを調べるにはどうすればよいですか?
私は両方のソリューションを試しましたが、問題はまだ見つかりません。フレームと境界は正確で、SourceRectの位置も同じです。 – currarpickt
@currarpicktそれはバマーです。私が配置しようとしているアイテムの背景色を設定し、アイテムが配置されていることを確認することで、位置とサイズを解決するもう1つの方法です。それが私があなたにこれを解決することに近づくのを見ることができる唯一の他の方法です。 –
私はそれを試しました、すべての背景色を変更し、すべてが正しい位置にあります。 – currarpickt