Popover со встроенным навигационным контроллером перемещает представление Popover - PullRequest
1 голос
/ 22 октября 2011

Я использую методику, описанную здесь, для правильного обновления размера представления поповера при переключении между контроллерами представления:

Поповер со встроенным навигационным контроллером не учитывает размер при навигации назад

Работает нормально ... кроме этого: кнопка, которую я использую для вызова поповера, находится в правом углу окна.Как и ожидалось, всплывающее окно отображается слева от него.

Итак, давайте предположим, что кнопка находится в кадре (900, 700, 40, 40), а первый контроллер вида имеет размер 200 x 200.

Всплывающий вид расположен приблизительно в (700, 500, 200, 200).

Если в этом контроллере вида я нажимаю другой, более крупный вид (скажем, 400x400), представление всплывающего окна изменяется соответственно, перемещаясь влево.

Однако, когда я возвращаюсь назад (в контроллер вида 200x200) размер всплывающего окна изменяется, но он остается слева, поэтому он приблизительно расположен в (500, 500, 200, 200).

Другими словами, если при навигации по иерархии представлений существует более широкое представление, оно будет расширяться влево, а при возврате - уменьшаться справа (эффективно перемещая содержимое влево).

Примечание: извините за запутанное объяснение.Не очень хорошо знал, как объяснить эту проблему.

Кстати: точно такая же программа работает отлично, если я помещаю кнопку в левой части вида, поэтому поповер вынужден с самого начала расти вправо - однако маркетингу нужна кнопка справа,

...