показать экран входа перед контроллером панели вкладок? - PullRequest
2 голосов
/ 14 декабря 2011

Я разрабатываю приложение для iphone, которое сначала должно отображать экран входа в систему, после чего оно должно отображать контроллер панели вкладок с 5 вкладками. Я в состоянии запустить экран входа в систему, но после этого я не могу показать контроллер панели вкладок, пожалуйста, помогите мне с парнями исходного кода. вот мой код: это приложение на основе представления

application.M

 -(void)applicationDidFinishLaunching:(UIApplication *)application {    

    // Override point for customization after app launch 
       [window addSubview:viewController.view]; 
    [window addSubview:tabBarController. view];   
    [window makeKeyAndVisible];
    LoginView *loginView=[[LoginView alloc]initWithNibName:@"LoginView" bundle:nil];
    [window addSubview:loginView.view];
}  

, выполнив это, контроллер панели вкладок изначально отображается внизу экрана входа в систему. И также не может переключаться между элементами панели вкладок.

Ответы [ 3 ]

3 голосов
/ 14 декабря 2011

Что вы можете сделать, это следующее.

Запустите панель вкладок в качестве основного экрана, а затем перед загрузкой или отображением представления покажите экран входа и закройте экран входа в систему после успешного входа.

РЕДАКТИРОВАТЬ: Для примера кода посмотрите код, предоставленный Maulik

1 голос
/ 14 декабря 2011

Попробуйте сделать следующее:

[window makeKeyAndVisible];
LoginView * loginView = [[LoginView alloc] initWithNibName: @ bundle «LoginView»: nil];
[окно addSubview: loginView.view];

Сначала вы захотите показать журнал.После завершения входа в систему вы должны отправить сообщение делегату вашего приложения, чтобы он мог переключаться между вашим представлением входа в систему и вашим tabBarController:

-(void)loginFinished{   
    window.rootViewController=tabBarController;
}

Я советую вам:

1 - иметь IBOutletsдля вашего LoginViewController и UITabBarViewController, так что вы можете легко их использовать.

2 - Используйте уведомление, чтобы делегат вашего приложения знал, когда переключать контроллеры.

0 голосов
/ 14 декабря 2011

Предполагая, что у вас есть TabBarController класс по подклассам UITabBarController.

Вы также можете нажать контроллер панели вкладок после того, как представление входа завершит свою работу.

В файле Login.m

- (void) doLogin
{
  if(login)
  {
     TabBarController *aTabBarController = [[TabBarController alloc] initWithNibName:@"TabBarController" bundle:nil];
     [self.navigationController pushViewController:aTabBarController animated:YES];
     [aTabBarController release];    
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...