0

質問する前に、これに関する多くのドキュメントを読みました。だから私は私のアプリにnavigationControllerを持っています。ユーザーが私のアプリに初めて入るとき、私はこれを行います

RegViewController *opr = [[RegViewController alloc] init];
self.regController = opr;
[self.navigationController presentModalViewController:self.regController animated:NO];
[opr release];

そしてそれはうまくいきます。しかし、RegViewControllerの[OK]ボタンをクリックすると、このメソッドが呼び出されます

-(IBAction)btn_regPressed:(id)sender
{
   NSLog(@"start to dissmis modal");
 [self.navigationController dismissModalViewControllerAnimated:YES];
//[self.navigationController.parentViewController dismissModalViewControllerAnimated:YES];
 }

しかし、このコードは、ModalViewControllerを却下したくありません。誰かがチオスの問題について私を助けてくれませんか。ありがとう

4

2 に答える 2

1

呼び出しを次のように変更してみてください(navigationControllerを削除してください):

[self presentModalViewController:self.regController animated:NO];

ボタン内(navigationControllerを削除):

[self dismissModalViewControllerAnimated:YES];

あなたはあなたのnavigationControllerにあなたのモーダルを却下するように言っています、しかしあなたのviewcontrollerはそれをするべきです。ナビゲーションコントローラーは、ナビゲーション(移動および戻る)の目的で使用されます。そしておそらく、あなたのnavigationControllerはnilです。

于 2012-04-09T14:29:50.120 に答える
0

RegViewControllerで、次のように自分自身を却下してみてください。

-(IBAction)btn_regPressed:(id)sender
{
   NSLog(@"start to dissmis modal");
   [self dismissModalViewControllerAnimated:YES];
}
于 2012-04-09T14:29:35.523 に答える