2012-04-28 2 views
1

У меня есть экран входа в систему, и я хочу, чтобы определить, был ли пользователь уже зарегистрирован и, в конце концов, всплыл модальный.Выполнение segue при запуске viewcontroller

Я создал пользовательский сегмент, который показал модальность без анимации.

@implementation NonAnimatedSegue 

-(void) perform { 

    [self.sourceViewController presentModalViewController:self.destinationViewController animated:NO]; 

} 

Дело в том, что вызов этого SEGUE из viewDidLoad или viewWillAppear не имеет никакого эффекта. Если я вызову его из viewDidAppear, экран входа в систему будет показываться, пока модальный не откроется.

Любая идея, как решить эту проблему?

+0

он должен работать с viewWillAppear –

+0

@AnkitSrivastava Это не работает, вы получаете предупреждение: «Попытка представить viewB на viewA, чей вид не находится в окне heirarchy!» – Deco

+0

Вы должны рассмотреть возможность наличия двух раскадровки, один для потока, связанного с входом в систему, и другого для нормального потока. Необходимо проверить статус входа в appDelegate и соответствующим образом создать раскадровку. – RJR

ответ

0

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

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    /*stuff*/ 
    /*get the view controller from storyboard/nib*/ 
    [self.window setRootViewController:CorrectViewController]; 
} 

Он не будет показывать модальный вид, а просто покажет вход в систему при запуске.

 Смежные вопросы

  • Нет связанных вопросов^_^