更好地控制视图控制器

时间:2011-07-19 20:23:56

标签: xcode uiview uiviewcontroller

uinaviguation controller issue

如图所示,我在包含cutom按钮的按钮中有一个视图1,只是从像tabbar这样的一些视图移动,而在第一个“tab”中我也有一些按钮,它们应该推送一些视图。 / p>

我的问题是,当我添加导航控制器并推送视图时,我会移动所有视图,包括按钮视图1.我只是希望它仅针对上方视图移动。

我厌倦了将导航控制器添加到第一个上部视图,但仍无法正常工作。

请帮忙吗?

2 个答案:

答案 0 :(得分:0)

如果那些是两个单独的UIViewControllers 您可以尝试删除按钮view1并在下一个视图中分配新的按钮。

[self.view1 removeFromSuperview];

如果它在一个类中作为两个UIViews完成,你可以做同样的事情,但是没有分配新按钮,只需:

[self.view3 bringSubviewToFront:view1];

答案 1 :(得分:0)

UINavigationController(实际上,整个视图控制器架构)不支持只交换一些子视图。它适用于UITabBarController,因为标签栏控制器包含导航控制器。你真的没有这个选择。

可能有用的两个选项是:

  1. 将“视图1”的单独实例添加到“视图2”和“视图3”。

  2. 放弃UINavigationController并自行管理从“视图2”到“视图3”的转换。动画转换并不困难,但偏离推荐的视图控制器架构使这成为一个高级主题。