在 UITabBarController 的 UINavigationController 中推送 UIViewController

Push a UIViewController within a UITabBarController's UINavigationController

我有一个带有 4 个选项卡的 UITabBarController。每个选项卡都是一个 UINavigationController,其中 UIViewController 作为其 RootViewController 加载。 例如:

Tab1ViewController* viewC = [[Tab1ViewController alloc] initWithNibName:nil bundle:nil];
UINavigationController* navCDisc = [[UINavigationController alloc] initWithRootViewController: viewC];

在我的 Tab1ViewController 中点击一个按钮,我现在必须将一个新的 UIViewController 推到现有的 UIViewController 之上。我怎样才能做到这一点?

在 Tab1ViewController.m 文件中,我试过:

UIViewController *newVC = [[UIViewController alloc] initWithNibName:nil bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:newVC];
[self.navigationController pushViewController:newVC animated:YES];

这表现得很奇怪,会自动切换标签页。

UIViewController *newVC = [[UIViewController alloc] initWithNibName:nil bundle:nil];
[self.navigationController pushViewController:newVC animated:YES];

仅此而已,不要创建另一个 UINavigationController。如果不行,请确保代码已执行且 self.navigationController 不为 nil(打断点);如果是,它将起作用