Это мой первый пост здесь, и я очень новичок в разработке для iPhone, поэтому, пожалуйста, потерпите меня.
У меня есть приложение, которое имеет несколько контроллеров представления, и каждый контроллер представления имеет несколько перьевфайлы, которыми он управляет, и некоторые из перьев имеют более одного вида.По всему приложению есть панель инструментов, управляемая контроллером корневого представления.
После многих поисков у меня работает ротация на всех экранах, кроме одного.У меня нет их для загрузки в правильной ориентации, но я думаю, что это другой вопрос.
В моих перьях, которые имеют более одного вида, я могу выбрать параметры автоматического изменения размера только в исходном главном виде.На добавленных мною представлениях, которые я загружаю с помощью insertSubview, я могу выбрать параметры фиксированного поля, но не параметры изменения ширины и высоты.Я использую Xcode 4.
Мой 1-й вопрос, почему я не могу выбрать параметры изменения размера на дополнительных видах?
Извините, мне пришлось удалить изображения, которые я вставил сюда,показывая, что я имею в виду, чтобы иметь возможность публиковать сообщения.
В любом случае, это не моя главная проблема, я просто хочу из любопытства узнать, почему я не могу выбрать параметры изменения размера.Я нашел способ обойти это в коде.В функцию, куда я загружаю подпредставление, я добавляю [viewName setAutoresizingMask: UIViewAutoresizingF FlexibleWidth | UIViewAutoresizingF FlexibleHeight];
Например, чтобы загрузить представление, которое я назвал shiftStart, я использую:
- (IBAction)loadShiftStart:(id)sender {
[self clearView];
[self.view insertSubview:shiftStart atIndex:0];
[shiftStart setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
}
сейчасвот моя проблемаУ меня есть файл пера, который имеет 3 вида, вид, который является основным видом, который загружается первым, rotaStart, который загружается как подпредставление при нажатии кнопки в первом представлении, и shiftStart, который загружается как подпредставление, когда кнопка на первомвид нажимается.rotaStart и shiftStart практически идентичны, с заголовком, текстовым блоком, кнопкой «Да» и кнопкой «Нет».Единственное отличие - это текст в поле, и какой вид загружается, если вы нажимаете кнопки «Да» или «Нет».
У меня все те же параметры изменения размера и полей, выбранные в Xcode для заголовка и текстаблок и кнопки, и, насколько я могу судить, код, который их загружает, идентичен (см. код ниже), но shiftStart вращается правильно, а rotaStart - нет.
- (IBAction)loadRotaStart:(id)sender {
[self clearView];
[self.view insertSubview:rotaStart atIndex:0];
[rotaStart setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
}
- (IBAction)loadShiftStart:(id)sender {
[self clearView];
[self.view insertSubview:shiftStart atIndex:0];
[shiftStart setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
}
Может кто-нибудь сказать мне, почему rotaStart неВращающийся, когда телефон меняется на альбомную, пожалуйста?
Извините, это объяснение немного затянуто.Я не уверен, как еще это объяснить.
Спасибо