У меня есть popover, где 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 это облом. Другой способ решить проблему определения местоположения и размера, задав цвета фона элементов, которые я пытаюсь установить, и элемент, в который он помещен. Просто чтобы увидеть, все ли как ожидается. Это единственный другой способ увидеть, как вы приближаетесь к решению этого. –
Я пробовал это, менял каждый цвет фона, и все находится в правильном положении. – currarpickt