2016-03-28 8 views
0

アプリケーションが30秒間タッチされていないような場合、現在の画面の上に別の画面が表示され、ログアウトするか続行するかの選択肢があります。私はタッチを検出する機能を実装し、アプリケーションに触れないと通知を作成することができます。通知オブザーバが呼び出されたときにNSLogを置くと、すべてがうまくいきます。しかし、私はどのように画面を表示するか分からない。通知オブザーバセレクタからViewControllerを表示する方法

私は私のrootviewControllerクラスとApplicationDidTimeoutメソッドで通知を入れたように、私は動作しませんperformSegueWithIdentifierを試みた。私はその見解を得ていない。だから、私は下に書かれたコードを試して、それはビューを読み込みますが、私は他のビューの上に来ることができるようにFormsheetでビューが欲しいです。

ときに、セッションタイムアウト

-(void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated];  

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationDidTimeout:) name:@"ApplicationDidTimeout" object:nil]; 
} 

- (void) applicationDidTimeout:(NSNotification *) notif 
{ 
    NSLog(@"I m here"); 
    BCDSessionInactivityViewController *sessionView=[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"InactivityViewController"]; 
    [[self topViewController] presentViewController:sessionView animated:YES completion:nil]; 
} 
+0

あなたにビューを望むことができます最初のタスクは、スタックオーバーフローの問題を適切にフォーマットすることを学ぶことです。 – matt

答えて

0

私はanyViewの上にsessionViewを表示できるように、誰かがこれで私を助けてくださいしかし、私はFormsheet

BCDSessionInactivityViewController *sessionView=[[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"InactivityViewController"]; 
sessionView.modalPresentationStyle = UIModalPresentationFormSheet; 
[[self topViewController] presentViewController:sessionView animated:YES completion:nil]; 
+0

ありがとうございました。それは迅速な助けでした。そして、私はまた質問をする書式化の世話をするだろう – Nitya

関連する問題