Предполагая, что вы предоставили код вашего detail
ViewController, вам не нужно устанавливать фрейм для pickerRect
. Просто нужно сообщить приложению, что при изменении ориентации, pickerView должен вращаться вместе с ним, как показано ниже
self.picker.autoresizingMask = UIViewAutoresizingFlexibleWidth |
UIViewAutoresizingFlexibleTopMargin;
Вы можете изменить размер окна выбора, установив его рамку, как вы сделали. Поскольку вы работаете с UISplitViewController
, pickerView должен быть подвидом вашего detail
ViewController, а НЕ self.view.window
. Кроме того, просмотрите образец, указанный на по этой ссылке , чтобы увидеть, какие другие ошибки вы допустили.