我有一个包含标签栏视图的应用程序,我在同一个应用程序中有一个登录xib(login.xib)及其对应的类文件(LoginController)。我希望当我的应用程序启动时,应首先加载登录文件,然后一旦我点击登录按钮,我的TabBar视图应该启动。
尝试了很多方法,但没有任何效果。 :(
最新的一个是我尝试在应用程序didFinishLaunchingWithOptions结束时将以下代码放在AppDelegate文件中但面临错误:
loginController = [[LoginController alloc] init];
[window addSubview:tabcontroller.view];
[window addSubview:loginController.view];
[window makeKeyAndVisible];
return YES;
错误是“loginController”未声明。
我错过了什么。如果有其他方法可以满足我的要求,请告诉我。
此外,在登录中的clickButton()上,我正在使用事件Touch Up Inside。
答案 0 :(得分:4)
loginController = [[LoginController alloc] initWithNibName:@"login" bundle:nil];
[window addSubview:loginController.view];
[window makeKeyAndVisible];
完成登录检查后添加以下行。
[window addSubview:tabcontroller.view];
另外,请检查loginCont的使用位置?
谢谢,
答案 1 :(得分:2)
试试使用:
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
UIView *indicatorView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
UIImageView *splashV=[[UIImageView alloc]initWithFrame:CGRectMake(0, 20, 320, 460)];
[splashV setImage:[UIImage imageNamed:@"Default.png"]];
[indicatorView setBackgroundColor:[UIColor clearColor]];
[indicatorView addSubview:splashV];
[self.window addSubview:indicatorView];
//Take button check credentials on successful login call StopViewOnsuccessfullogin
}
-(void)StopViewOnsuccessfullogin
{
[indicatorView removeFromSuperview];
[splashV release];
[window addSubview:tabcontroller.view];
[window makeKeyAndVisible];
}
希望能奏效.....
答案 2 :(得分:1)
一种方法是将Interface Builder中AppDelegate的视图控制器属性更改为新的View Controller的XIB文件。
移动标签栏&将视图控制器关联到另一个nib中,并且只在登录屏幕完成后加载。