2014-09-24 1 views
1

У меня возникла проблема, связанная с UIPopovers. Попсор позиционируется (то есть позиция xCoordinate и yCoordinate) корректно на iOS 7.1, но на iOS 8 тот же popover появляется с чуть выше желаемой позиции y. У меня 2 Popovers в моем приложении: первый создается программно и показано с помощью метода:Попсор представлен в неправильном положении на iOS8 (работает как ожидается на iOS 7)

presentPopoverFromRect:inView: 

Когда я добавить смещение 150 в прямоугольнику, то она появляется в правильном положении на iOS8.

Второй popover загружается непосредственно из раскадровки с использованием segue.

Так что у меня 2 вопроса:

  1. Есть ли способ/подход, который я могу следовать так, что тот же код работает на оба прошивке 7 и 8 версии.

  2. Как я могу обрабатывать/изменять прямоугольник для popovers, которые представлены/встроены в кнопку в файле раскадровки.

Если есть решение для первого вопроса, то я думаю, что это решило бы проблему.

оцените любую помощь по этому вопросу.

+0

Любая удача с этим? – Sunkas

ответ

1

В прошивке 8 для представления UIPopOverController

Вместо

popOverController.popoverContentSize = CGSizeMake(100 , 200); 

(popOverController является объектом класса UIPopOverController)

Попробуйте это (для прошивки 8)

controller.preferredContentSize = CGSizeMake(100 , 200); 

(контроллер - контроллер вида, который вы представляете)

+0

Не работает для меня – Sunkas

Смежные вопросы