将单独的UINavigationController添加到子类

时间:2011-07-05 12:06:23

标签: iphone uinavigationcontroller

如何将自己的UInavigationController添加到子类。

这是我的代码

    VC1 *vController  = [[VC1 alloc]init];

[self.navigationController pushViewController:vController animated:YES];

[vController release];

我需要再添加一个导航控制器到 vController 。所以我可以为孩子保持单独的堆栈。

我试过这种方式,但它对我不起作用。

UINavigationController *navController=[[UINavigationController alloc] initWithRootViewController:self];
  [self.view addsubview:navController.view];

[navController release];

它在父导航控制器上重叠。

2 个答案:

答案 0 :(得分:1)

假设你有“A”主导航控制器& B控制器是否由TableView或其他任何东西继承。

在B中创建UINavigationController的对象。像B * bObject一样在A中创建B的对象。将self.navigationControl传递给B,如

bObject.navgationObject=self.navigationController

并在B中使用navgationObject访问所有导航。不需要在B中调用self.navigation只需使用navgationObject。

我希望这是你的回答

答案 1 :(得分:-1)

尝试以下方法:

VC1 *vController  = [[VC1 alloc]init];
UINavigationController *navController= [[UINavigationController alloc]   initWithRootViewController:vController];
[self.navigationController presentModalViewController:navController animated:YES];

[vController release];

它是模态的,因此要删除它,您需要引用父navigationController来关闭子导航控制器。