我正在做一个基于 SingleView 的应用程序,其中我有许多 UIviewcontrollerclass 子类用于从一个 View 移动到另一个 View 。我在其中一个 View 中有一个选项卡栏,并希望在单击时与其他 View 进行通信一个选项卡。所以请告诉我我该怎么做,我被困在这里了。 我有课叫
登录页面.h/.m/.xib
我的服务.h/.m/.xib
历史.h/.m/.xib
配置文件.h/.m/.xib
MyRecentRequest.h/.m/.xib
当我从登录页面进入时,它会移动到 Myservices View 。 我在底部添加了标签栏,并添加了两个标签项,总共有 4 个标签栏项,分别命名为 Myservices、history、MyrecentRequest 和 profile。
现在我想将选项卡栏与其他类连接起来,这样当我单击选项卡项时,应该会出现该特定类的相应 View ,那么我该怎么做呢?请提供示例代码。
最佳答案
首先,您如何通过 IB 或代码维护 tabBar。下面是代码。您需要为每个 tabItem 分配一个包含所有 viewControllers 的 tabBar,下面的示例包含 2 个 tabItem:
UITabBarController* tabBarController = [[UITabBarController alloc] init];
NSMutableArray *localViewControllersArray = [[NSMutableArray alloc] initWithCapacity:8];
ViewController1* vC1 = [[ViewController1 alloc] init];
UINavigationController* navController1 = [[UINavigationController alloc] initWithRootViewController:vC1];
[vC1 release];
navController1.tabBarItem.image = [UIImage imageNamed:@"navController1_image.png"];
[localViewControllersArray addObject:navController1];
[navController1 release];
ViewController2* vC2 = [[ViewController2 alloc] init];
UINavigationController* navController2 = [[UINavigationController alloc] initWithRootViewController:vC2];
navController2.tabBarItem.image = [UIImage imageNamed:@"navController2_image.png"];
[vC2 release];
[localViewControllersArray addObject:navController2];
[navController2 release];
tabBarController.viewControllers = localViewControllersArray;
self.window.rootViewController = tabbarController;
[localViewControllersArray release];
[tabBarController release];
通过这种方式,您可以通过代码维护 tabBar,这样如果选择了选项卡,将显示相应的 View ,在此示例中,每个选项卡中都使用导航 Controller 来提供导航,如果只需要 1 个 View ,您可以避免导航 Controller ..
关于iphone - 如何使用标签栏在 View 之间移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9075873/