iPhone:视图控制器的标签栏
问题描述:
嗨,我需要一些帮助,这:iPhone:视图控制器的标签栏
我有两个视图控制器,让我们说:
- FirstViewController(第一)是navigationviewcontroller
- SecondViewController内(二)
所以在第一的viewDidLoad方法,我有这样的:
SecondViewController *second = [[SecondViewController alloc] initWithNibName:...];
[self.addsubview:second.view];
我已经完成了这个cuz我想用我的自定义按钮和颜色制作自定义标签栏。
我有这样当我按下自定义“标签栏”(seconviewcontroller)
ConfiguracionViewController *conf = [[ConfiguracionViewController alloc] initWithNibName:@"ConfiguracionView" bundle:nil];
[self.navigationController pushViewController:conf animated:YES];
[conf release];
的按钮中的一个,但由于第二视图控制器没有被按下,或在第一视图控制器I可以模态呈现无法访问navigationController。我也试过这个
[self.parentViewController.navigationController pushViewController:...];
但它也没有工作。
请帮助我,我需要学习如何做到这一点,并为我的坏英语感到抱歉。
最好的问候,
卡洛斯巴尔
答
首先,你不应该被加入到这样的第一视图第二种观点:
[self.view addSubview:second.view];
酒店parentViewController不会在这种情况下,由于工作其次不是导航层次结构的一部分。
相反,你可以让你自己的财产引用“父”视图控制器:
SecondViewController *second = [[SecondViewController alloc] initWithNibName:...];
// set new property
second.parentVC = self;
[self.view addSubview:second.view];
在SecondViewController.h你需要申报“parentVC”和SecondViewController.m实例变量和财产你需要综合这个属性。
然后,你应该能够从SecondViewController.m访问导航控制器和推视图控制器是这样的:
[self.parentVC.navigationController pushViewController:...];
由于它的工作! – 2010-01-18 05:28:04