按钮更改视图的代码(使用 TabBarController)

Posted

技术标签:

【中文标题】按钮更改视图的代码(使用 TabBarController)【英文标题】:The code for a button to change views (with TabBarController) 【发布时间】:2011-04-24 16:00:53 【问题描述】:

我有一个带有 TabBarController 的基本应用程序。我有三个选项卡,它们都有 .xib 文件,每个选项卡都会加载这些文件。每个选项卡也有一个 NavigationbarController,因此它有一个顶部带有标题的导航栏。 现在我想制作一个按钮(实际上每个选项卡上都有一个,没关系),它加载另一个视图(它应该翻转,但现在也没关系)。如何编码? 我已经有了这段代码,但是每个类的窗口都有问题(我也不知道该把它放在哪个操作中。):

- (void)flipToBack 
OptionsViewController *optionsView= [[OptionsViewController alloc] initWithNibName:@"OptionsView" bundle:nil];
[self setSecondViewController:optionsView];
[optionsView release];

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:2.0];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:window cache:YES];
[viewController (?).view removeFromSuperview];
[self.window addSubview:[OptionsViewController view]];
[UIView commitAnimations];

其中 OptionsViewController 是我的 OptionsView 的 .h 和 .m 文件。 ViewController 是我卡住的地方。我应该在那里放什么控制器?另外:我应该把它放在哪个文件中? (可能在当前视图中),我卡在这里。

我的观点如下:

-View
  -TabBar
    -Navigation Bar
      -TabBar item
        -NavigationBar Button
      -View controller
    -Navigation Bar
      -TabBar item
        -NavigationBar Button
      -View controller
    -Navigation Bar
      -TabBar item
        -NavigationBar Button
      -View controller

【问题讨论】:

【参考方案1】:

您想转换到全新的视图/视图控制器吗?如果是这样,请尝试 - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated 在您的导航视图控制器中。

【讨论】:

是的,我想过渡。我会试试的。谢谢回复。/ 嗨,我试过了。当我实施它时,什么也没发生。我所做的只是从我的第二个视图控制器中创建一个新对象,然后执行您的功能,然后释放该对象。我还应该从监督中删除标签栏控制器吗?以及如何做到这一点? 我已经解决了。我必须使用正确的导航控制器,并且我使用了我之前制作的对象。感谢您的回复。

以上是关于按钮更改视图的代码(使用 TabBarController)的主要内容,如果未能解决你的问题,请参考以下文章

在 ViewPager 中单击按钮更改文本视图

当我点击导航栏时,来自栏按钮的 ios 操作表不会关闭

更改导航视图上的默认后退按钮

按下按钮时如何更改颜色视图? (迅速)

通过 NavigationController-TabBarController-NavigationController 以编程方式导航

如何更改移动视图菜单中最后一个按钮的文本颜色?