У меня есть UIPopoverController
, содержащий UITableView
. Поместитель изменен в функции контроллера -viewDidAppear
контроллера вида, чтобы он соответствовал содержимому таблицы. В то время как popover правильно изменяется, его стрелка обычно больше не указывает на оригинал CGRect
. Есть ли способ заставить popover переместить себя после изменения размера, чтобы его стрелка указывала на намеченную цель?Отрегулируйте положение UIPopoverController после изменения размера
EDIT: Я не могу установить размер пирог в -viewDidLoad
, так как таблица не загружает свои данные, пока -viewDidAppear
не называется, и в результате я не знаю, какой размер поповер не должно быть до тех пор , Кроме того, я изменяю размер popover, когда нажимается одна из ячеек таблицы, чтобы отобразить другое представление, и это также приводит к тому, что стрелка больше не указывает на ее предполагаемую цель.
Вы можете установить размер popover перед загрузкой таблицы. Две вещи полностью раздельны. То, что вы делаете, - это установка размера инкапсулирующего фрейма; если фактический размер содержимого UITableView больше, вы получите полосы прокрутки, точно так же, как это происходит при загрузке табличного представления на iPhone, а содержимое выше 480 пикселей. –
@Shaggy Frog: Я хочу, чтобы избежать полос прокрутки, когда это возможно. – titaniumdecoy
Опять же, вы неправильно поняли. Если общий контент в UITableView выше его кадра, он будет показывать полосы прокрутки. Это совершенно отдельная тема из того, что вы спрашиваете, которая корректирует рамку просмотра popover, о которой я объяснил, как это сделать. –