2014-09-03 39 views
0

我有以下代碼,用於我的Login.m視圖控制器類繞過該屏幕,如果用戶已經登錄(並鏈接到Facebook)。如何最好地管理CLLocationManager,MKMapView和地標

對於上下文,我使用的是Parse Platform,因此引用了PFUser類。

-(void)viewDidAppear:(BOOL)animated 
{ 
    [super viewDidAppear:animated]; 

    // Check if user is cached and linked to Facebook, if so, bypass login 
    if ([PFUser currentUser] && [PFFacebookUtils isLinkedWithUser:[PFUser currentUser]]) { 
     UITabBarController *tabController = [self.storyboard instantiateViewControllerWithIdentifier:@"initialtabview"]; 
     [self presentViewController:tabController animated:NO completion:^(void){}]; 
    } 
} 

這肯定的作品,雖然用戶獲取登錄視圖的閃光initialtabview出現之前。

有什麼辦法可以避免這種情況?

請注意,我的應用程序目前已安裝,以便登錄視圖是初始視圖控制器。因此,在AppDelegate中,我可以在didFinishLaunchingWithOptions中做些什麼?

請注意,如果在viewWillAppear中使用此代碼,將會失敗。

回答

0

我認爲有兩種可能的方式來解決問題:
1.您可以嘗試在viewDidLoad:方法,這比早先viewDidAppear:所謂的代碼塊。
2.您可以用InitialTableView啓動應用程序,如果用戶未被緩存或鏈接到Facebook,則只會加載Login.m視圖。然後在InitialTableView我寧願用viewDidLoad:函數來呈現登錄視圖。

相關問題