解决多个标签问题

时间:2012-11-30 07:10:01

标签: iphone objective-c ios

我有一个应用程序,其中有activationView。应用程序激活后,我需要在选项卡中显示其余视图。我用google搜索并发现要在iPhone中使用Tabs,应用程序必须是Tab Bar Application我的应用程序不符合我的要求。实现标签的最佳方式是什么(在应用程序的第二个视图中)?

编辑1

我试过的代码

/*  tabsController = [[Tabs alloc] init];
        [self.window setRootViewController:tabsController];*/

        AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate]; appDelegate.window.rootViewController = tabsController;

我尝试过这些方法,但我得到了一个纯白色的视图。

3 个答案:

答案 0 :(得分:2)

当您从第一个视图移动到标签栏视图时,请尝试下面的代码。

  

AppDelegate * appDelegate =(AppDelegate *)[[UIApplication   sharedApplication]委托]; appDelegate.window.rootViewController =   yourTabbarController;

答案 1 :(得分:1)

我认为你可能在一个项目中寻找多个VC。因此,在appDelegate中为loginVC和其他VC(对于tabbar)声明并初始化VC,并在登录成功后调用以下函数。

启动时将LoginVC设为RootViewController

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{// declare LoginVC and make it rootViewController
 self.window.rootViewController = self._loginVCObj;
    [self.window makeKeyAndVisible];
}

#pragma mark- Continue to next screen after successful Login

-(void) continueToNextView
{   // Handle UI after Login like.
 [_loginVCObj._indicator stopAnimating];
    [_loginVCObj._loginButton setEnabled:YES];
//add the VC to the tabbar 
    self._tabBarController.viewControllers = [NSArray arrayWithObjects:self.navigationControllerList,_favItemListNavObj, _toDoHereVC, _settingNavObj, nil]; 
// make tabbar as rootViewController
     self.window.rootViewController = self._tabBarController;
}

答案 2 :(得分:1)

我认为您的代码在“基于窗口的应用程序”中工作,但是使用新的SDK,您无法新建这样的项目。

如果您想使用您的代码,这将有助于您: Cannot find window-based application on XCode

如果您使用故事板,那么构建这样的应用程序非常容易。