gpt4 book ai didi

iphone - 以编程方式组合 UITabController 和 UINavigation Controller http ://t. co/R52RlUL UITabController 和 UINavigation Controller 以编程方式

转载 作者:行者123 更新时间:2023-11-29 11:23:14 26 4
gpt4 key购买 nike

我已经使用代码(没有 IB 的东西)创建了一个 UItabbarcontroller 和 2 个带有 UITableViews 的 View ,我现在想在顶部添加一个导航栏,其中包括添加和编辑按钮,但是我似乎被绊倒了我的应用程序启动或仅将导航 Controller 添加到第三个选项卡。

这是我添加标签栏和切换 View 的主要代码

仅供引用 - 我正在使用 XCode4

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.mainTabBar = [[UITabBarController alloc] init];

// create the 2 views
tableViewController* vc1 = [[tableViewController alloc] init];
tableViewController2* vc2 = [[tableViewController2 alloc] init];

// put them in an array
NSArray* controllers = [NSArray arrayWithObjects:vc1, vc2, nil];

// for the tab bar
mainTabBar.viewControllers = controllers;

// Add the tab bar controller's current view as a subview of the window
[self.window addSubview:self.mainTabBar.view];

// Override point for customization after application launch.
[self.window makeKeyAndVisible];
return YES;
}

最佳答案

你想要导航 Controller 在哪里?您必须在 UITabBarController 中为您想要的每个选项卡创建一个。

您将 navigationController 与其堆栈中的第一个 View Controller 一起添加。试试这个:

// create the controllers for UITabBarController
tableViewController *vc1 = [[[TableViewController alloc] init] autorelease];
navController *nav1 = [[[UINavigationController alloc] initWithRootViewController:vc1] autorelease];

tableViewController *vc2 = [[[TableViewController alloc] init] autorelease];
navController *nav2 = [[[UINavigationController alloc] initWithRootViewController:vc2] autorelease];

// put them in an array
NSArray *controllers = [NSArray arrayWithObjects:nav1, nav2, nil];

// rest of your code

另请注意,您需要释放分配或保留的任何内容。您可以像我一样通过在初始化它们时添加 autorelease 来做到这一点,或者您可以在将它们添加到 controllers 数组后显式释放它们。

然后根据您的实现方式,在其loadViewviewDidLoad 方法中为每个 View Controller 配置navigationItem

关于iphone - 以编程方式组合 UITabController 和 UINavigation Controller http ://t. co/R52RlUL UITabController 和 UINavigation Controller 以编程方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5639945/

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