0

假设在 UITabbarController 中我们有选项卡 A、B、C。

当用户从选项卡 A 转到选项卡 C 时,选项卡 C 的 navigationController 通过使用 1) pushViewController = new view 将新视图推送到其顶部;或 2) addSubView(新视图)

之后,当用户离开选项卡 C 时,要么转到选项卡 A 或 B。然后,如果用户再次返回选项卡 C,他们将在选项卡 C 中看到哪个视图?基于上述两种不同情况的结果是什么?

4

2 回答 2

2

添加子视图用于将任何子视图添加到当前视图,因此在这两种情况下,您将获得相同的视图显示,但如果您使用 AddSubView 添加“新视图”视图控制器,那么在这种情况下,控件将不会转到 .m新视图的文件,您将无法使用“新视图”的 .h 和 .m 文件与“新视图”的 UIControls 交互。

如果您想在“新视图”上做某事,例如使用一些 UIButton 或 UITextField,那么您必须在视图控制器的 .h 和 .m 文件中编写代码,在该文件中添加“新视图”作为子视图。

于 2012-11-16T07:21:11.403 回答
1

假设您的每个选项卡都有单独的导航控制器,就像我会做的那样,那么在用户返回选项卡 C 后,您将在两种情况下看到新视图。如果用户再次触摸选项卡 C 选项卡,则导航控制器会将推送的视图(或它们各自的控制器)拉回堆栈上的第一个视图。这仅适用于案例 1)。在情况 2) 中什么都不会发生。

于 2012-11-16T08:04:36.423 回答