Есть ли способ на самом деле * визуально проектировать * двойные представления (пейзаж + портрет) в Интерфейсном Разработчике?

Мой нынешний дизайн требует некоторой классной анимации между портретным и альбомным видами данных. Представление данных довольно сложное, поэтому между графическими элементами и элементами данных на экране может быть около 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 режим переключения, который позволяет разрабатывать два графических макета представления с помощью инструментов визуального макета, или числовой код является единственным способом?

5
задан AcroYogi 3 March 2011 в 13:05
поделиться