【发布时间】:2012-02-25 01:11:07
【问题描述】:
当我们点击导航控制器中的后退按钮时,它会自动弹出视图控制器并返回到前一个视图控制器.. 谁能告诉我它是如何工作的.. xcode 中该操作的代码在哪里。
【问题讨论】:
标签: iphone ios uinavigationcontroller uinavigationbar uinavigationitem
当我们点击导航控制器中的后退按钮时,它会自动弹出视图控制器并返回到前一个视图控制器.. 谁能告诉我它是如何工作的.. xcode 中该操作的代码在哪里。
【问题讨论】:
标签: iphone ios uinavigationcontroller uinavigationbar uinavigationitem
我不知道你所说的“它是如何工作的”究竟是什么意思..但是发生的事情是视图控制器被放置在一个堆栈中(RootController 是导航控制器),当你按下“返回”按钮时,它只会弹出堆栈中最顶部的控制器,你从你来的地方回来了。希望它有帮助..!!
【讨论】:
你在看这个吗?
[self.navigationController popViewControllerAnimated:YES];
【讨论】:
完成所有这些的代码在 Apple 的 UINavigationController 类中处理。你看不到这段代码。
如果您想更改 Apple 类的行为,他们有时会委派他们执行的某些操作的责任,或者有时只是提供将要发生的事情的信息。
例如,如果您的类成为 UINavigationController 的委托,它将向您发送两条消息:
– navigationController:willShowViewController:animated:
– navigationController:didShowViewController:animated:
【讨论】: