gpt4 book ai didi

iphone - 如何以编程方式创建选项卡栏并在其上添加按钮

转载 作者:行者123 更新时间:2023-12-03 19:30:05 25 4
gpt4 key购买 nike

我想在我的 View 中以编程方式将按钮添加到我的选项卡栏...

我有导航 Controller ,但它不允许我添加这些..在我看来,我想以编程方式创建...

最佳答案

由于标签栏 Controller 是一个容器 View Controller ,可用于将应用程序划分为两个或多个不同的操作模式,因此大多数应用程序都将导航 Controller 作为标签栏 Controller 的子级。

苹果的立场是这样的:

You use tab bar controllers in situations where your application either presents different types of data or presents the same data in significantly different ways.

这并不是说您不能做不同的事情...您遇到的主要问题是您已经在应用程序中放置了一个导航 Controller ,并且您希望以编程方式创建标签栏 Controller 。因此,我能看到这一点的唯一方法是,您不介意每次在导航 Controller 中更改屏幕时标签栏 Controller 是否发生变化。有些应用程序以这种方式工作。大多数人没有。

如果我的上述假设是正确的,我建议您重新考虑您的代码,看看您是否想继续这条开发路线。如果是这样,您可以轻松创建选项卡栏 Controller 并将其附加到当前 View 中。

这是我用来为我的一个应用程序创 build 置的代码:

// set up a local nav controller which we will reuse for each view controller
UINavigationController *localNavigationController;

// create tab bar controller and array to hold the view controllers
UITabBarController *tabBarController = [[UITabBarController alloc] init];

NSMutableArray *localControllersArray = [[NSMutableArray alloc] initWithCapacity:1];

// setup the first view controller (Root view controller)
RootViewController *myViewController;
myViewController = [[RootViewController alloc] initWithTabBar];

// create the nav controller and add the root view controller as its first view
localNavigationController = [[UINavigationController alloc] initWithRootViewController:myViewController];
localNavigationController.navigationBar.barStyle = UIBarStyleBlack;
localNavigationController.delegate = self;

[localControllersArray addObject:localNavigationController];

// release since we are done with this for now
[localNavigationController release];
[myViewController release];

tabBarController.viewControllers = localControllersArray;
tabBarController.moreNavigationController.navigationBar.barStyle = UIBarStyleBlack;

tabBarController.delegate = self;
tabBarController.moreNavigationController.delegate = self;

// release the array because the tab bar controller now has it
[localControllersArray release];

self.tabBarController.selectedIndex = 0;

// add the tabBarController as a subview in the window
[window addSubview:tabBarController.view];

// need this last line to display the window (and tab bar controller)
[window makeKeyAndVisible];

在很多情况下,我觉得以编程方式完成所有事情会更容易。

希望这有帮助。

关于iphone - 如何以编程方式创建选项卡栏并在其上添加按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3220978/

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