Мой нынешний дизайн требует некоторой классной анимации между портретным и альбомным видами данных. Представление данных довольно сложное, поэтому между графическими элементами и элементами данных на экране может быть около 30 кнопок и меток одновременно. Я создал очень тщательно проработанный интерфейс ... теперь я раскладываю элементы для ландшафтного вида. Только так я До сих пор я обнаружил, что для этого нужно фактически разложить ландшафтный вид в коде, например:
-(void) positionViews {
UIInterfaceOrientation destOrientation = self.interfaceOrientation;
if (destOrientation == UIInterfaceOrientationPortrait || destOrientation == UIInterfaceOrientationPortraitUpsideDown) {
//---if rotating into PORTRAIT mode
timeBGbox.frame = CGRectMake(14, 88, 134, 14);
targetTime.frame = CGRectMake(0, 99, 150, 29);
energyBGbox.frame = CGRectMake(156, 88, 68, 14);
targetEnergy.frame = CGRectMake(154, 99, 70, 29);
speedBGbox.frame = CGRectMake(234, 88, 68, 14);
targetSpeed.frame = CGRectMake(226, 99, 48, 29);
speedLabel.frame = CGRectMake(264, 99, 40, 36);
} else {
//---if rotating to LANDSCAPE mode
timeBGbox.frame = CGRectMake(156, 12, 152, 14);
targetTime.frame = CGRectMake(160, 23, 150, 29);
energyBGbox.frame = CGRectMake(156, 50, 68, 14);
targetEnergy.frame = CGRectMake(154, 61, 70, 29);
speedBGbox.frame = CGRectMake(234, 50, 74, 14);
targetSpeed.frame = CGRectMake(228, 61, 48, 29);
speedLabel.frame = CGRectMake(269, 61, 40, 36);
}
}
Это кропотливый процесс, требующий множества попыток, чтобы выполнить то, что я мог бы сделать визуально за секунды в IB. В настоящее время, когда я переключаюсь между представлениями в IB и вручную перемещаю элементы в альбомном режиме, после переключения обратно в портретную ориентацию они оказываются не в том месте. Я использовал «пружины и распорки» как можно более творчески, но большинство моих элементов требуют точного ручного размещения, выходящего за рамки AutoSizing.
Мой вопрос: они не в том месте. Я использовал «пружины и распорки» как можно более творчески, но большинство моих элементов требует точного ручного размещения за пределами области AutoSizing.
Мой вопрос: они не в том месте. Я использовал «пружины и распорки» как можно более творчески, но большинство моих элементов требует точного ручного размещения за пределами области AutoSizing.
Мой вопрос: Существует ли в IB режим переключения, который позволяет разрабатывать два графических макета представления с помощью инструментов визуального макета, или числовой код является единственным способом?