2010-02-06 15 views
0

J'implémente Facbook connecter pour mon application sur le AnotherViewController [basé sur le projet NavigationController], là j'ai quelque chose à partager sur facebook. alors quand mettre ce code sur le viewDidLoad. lorsque l'utilisateur va à AnotherViewController avec l'animation Push. ma FBSession semble se connecter !! je veux lorsque l'utilisateur sélectionner le bouton et actionSheet apparaît alors décider de se connecter à facebookUn problème avec NavigationController et FBConnect [iPhone SDK]

- (void)actionSheet:(UIActionSheet *)menu didDismissWithButtonIndex:(NSInteger)buttonIndex { 

    switch (buttonIndex) { 
     case 0: 

      session = [FBSession sessionForApplication:@"587421274743043f3177a2f86684e533" secret:@"d22ad909a2e670269edd4d4e79c61c2a" delegate:self]; 
       [session resume];  
      if(session.isConnected) 
      {      

       [self showFBFeed]; 
      } 
      else 
      { 
       FBLoginDialog* login = [[FBLoginDialog alloc] initWithSession:session]; 
       [login show]; 
       [login release]; 
      } 

      break; 

      case 1: 
        [session logout]; 


       break; 

    } 

Quand mettre ce code sur la méthode tout viewDidUnload fonctionne bien, mais mon API facebook clé et secret ne fonctionne pas !!! Pourquoi ? Comment pourrait résoudre mon prablem? : | Merci.

Répondre

1

Je ne pense pas que vous compreniez ce que vous faites. La méthode viewDidLoad est appelée avant que la vue de votre contrôleur de vue ne soit chargée et affichée à l'écran. En mettant le code ci-dessus, vous allez automatiquement faire un login facebook.

Si vous voulez que la connexion facebook se produise lorsque l'utilisateur clique sur un bouton dans votre feuille d'action, vous devez exécuter le code ci-dessus à partir de la méthode déléguée de la feuille d'action.

En outre, dans le code ci-dessus, vous affichez l'écran de connexion Facebook à la fois lorsque l'utilisateur était déjà connecté et lorsqu'il n'y a pas de session. Cela n'a aucun sens.

+0

merci. ça marche super! mais je ne sais pas pourquoi '[session logOut];' ne fonctionne pas !! je modifie mes codes à la question, regarde – Momi