gpt4 book ai didi

iphone - 父 View navigationController

转载 作者:行者123 更新时间:2023-12-03 18:38:42 24 4
gpt4 key购买 nike

我有一个 View ,它是 tabBarController 的一部分。在此 View 中,我有一个带有表格的 subview 。单击此表中的单元格时,我想访问父 View 的导航 Controller 。这可能吗?如果可能的话,如何实现?

我以为会这样

BandDetailViewController *bandDetailViewController = [[BandDetailViewController alloc] initWithNibName:@"BandDetailViewController" bundle:nil];
bandDetailViewController.band = [thisDay objectAtIndex:indexPath.row];

[super.navigationController pushViewController:bandDetailViewController animated:YES];
[bandDetailViewController release];

但这不起作用。

最佳答案

当您实例化 subview Controller 时,传入对导航 Controller ( super Controller )的引用,并将其存储在实例变量中。然后您可以在需要时在子中引用它。我一直在寻找更优雅的解决方案来解决这个问题和类似的问题,但没有成功。传递引用作品,所以我这样做并尝试继续我的生活。

编辑:添加代码示例

在mainVC.m中

 // this might be in didSelectRowForIndexPath:
SubViewController *subVC = [[SubViewController alloc] init];
subVC.superNavController = self.navController;
[self.navigationController pushViewController:subVC animated:YES];

在 SubViewController.h 中

 @property (nonatomic, retain) UINavigationController *superNavController;

在SubViewController.m中

  @synthesize superNavController;


// then, wherever you need it, say to pass to a sub-sub-viewController...
[self.superNavController pushViewController:myNewVC animated:YES];

关于iphone - 父 View navigationController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5058242/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com