Как я могу установить Ориентацию Inital для находящегося в UISplitViewCOntroller приложения для iPad

У меня есть приложение представления разделения, хорошо работающее на iPad. Это использует установку по умолчанию (Легкая сдоба в Портрете, табличное представление слева в среде). Представления смещаются правильно, после того как приложение работает. Проблема, которую я вижу, состоит в том, что, когда приложение запускается (в средстве моделирования) работающий в альбомном режиме, парадигма UI является той, предназначенной для Режима портрета (Основной Список является легкой сдобой), что загрузки.

Я думаю, что это - некоторая странность со средством моделирования, или я пропускаю опцию на своем основном контроллере представления.

1
задан MystikSpiral 21 April 2010 в 22:22
поделиться

3 ответа

Добавляем это как ответ в надежде, что это станет более очевидным для тех, кто нуждается в таком же исправлении.

Я решил это. Я ждал загрузки и анализа внешнего потока XML. В результате я загружал окно с представлением splitViewController ПОСЛЕ моего метода applicationDidFinishLaunching .

Добавление:

[window addSubview: splitViewController.view]; 
[window makeKeyAndVisible]; 

обратно в этот метод исправлено распознавание ориентации

0
ответ дан 3 September 2019 в 01:07
поделиться

Я столкнулся с той же проблемой, что описана здесь. Решение было, к сожалению, очень простым: вручную установить рамку представления перед добавлением его в окно.

Просто проверьте ориентацию интерфейса и, если он альбомный, измените ширину и высоту рамки приложения (т.е. ширина становится высотой, а высота становится шириной).

CGRect frame = [[UIScreen mainScreen] applicationFrame];

switch(controller.interfaceOrientation){
    case UIInterfaceOrientationPortrait:
    case UIInterfaceOrientationPortraitUpsideDown:
      [controller.view setFrame:frame];
      break;
    case UIInterfaceOrientationLandscapeLeft:
    case UIInterfaceOrientationLandscapeRight:
      [controller.view setFrame:CGRectMake(frame.origin.x, frame.origin.y, frame.size.height, frame.size.width)];
      break;
}
2
ответ дан 3 September 2019 в 01:07
поделиться

Мне удалось отобразить представление загрузки, выполнив

[window addSubview:self._splitViewController.view];
[window addSubview:self._myLoadingView];
self._splitViewController.view.hidden = YES;
[window makeKeyAndVisible];
[self loadAllDatas];
self._splitViewController.view.hidden = NO;

i работает нормально

0
ответ дан 3 September 2019 в 01:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: