回到iPhone的上一个屏幕

时间:2011-12-12 10:58:56

标签: iphone objective-c cocoa-touch

我是iPhone开发的新手,我使用了基于视图的应用程序,其中我使用了导航控制器,在自定义表视图中单击行后,它显示了一个带有后退按钮的导航控制器,标题为上一屏幕的默认标题。

但是在详细视图中我创建了一个自定义后退按钮,点击该按钮后我想回到上一个屏幕。

调用自定义按钮的代码是:

  [backBtn addTarget:self action:@selector(btnClicked) forControlEvents:UIControlEventTouchUpInside];

和btnClicked中的代码是:

  [self dismissModalViewControllerAnimated:YES];

但我不会去上一个屏幕。

3 个答案:

答案 0 :(得分:11)

如果您使用了navigationController,我猜您可能已使用pushViewController: animated:方法将视图推送到堆栈中。甚至可能presentModalViewcontroller: animated:

如果是第一种情况,那么在你的自定义后退按钮方法中你应该

[self.navigationController popViewControllerAnimated:YES];

如果是第二种情况,则它应该dismissModalViewControllerAnimated:,但要记得从用于呈现它的对象中解除。

答案 1 :(得分:1)

使用此:

    [self popViewControllerAnimated: YES];

并确保您的Viewwillappear方法必须在那里。

答案 2 :(得分:1)

您可以使用此代码

 [[self parentViewController] dismissModalViewControllerAnimated:YES];