Проблема с NavigationController и FBConnect [iPhone SDK]

Я реализую подключение Facbook для своего приложения в AnotherViewController [на основе проекта NavigationController], там мне есть чем поделиться с facebook. поэтому, когда этот код помещается в viewDidLoad. когда пользователь переходит к AnotherViewController с анимацией Push. моя FBSession появляется для входа в систему !! я хочу, когда пользователь выбирает кнопку и появляется actionSheet, а затем решает войти в facebook

- (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;

    }

Поэтому, когда этот код помещается в метод viewDidUnload, все работает нормально, но мой ключ API facebook и секрет не работают !!! Зачем ? Как мог решить мой праблем? : | Спасибо .


person Momi    schedule 06.02.2010    source источник


Ответы (1)


Не думаю, что ты понимаешь, что делаешь. Метод viewDidLoad вызывается до того, как представление вашего контроллера представления загружается и выводится на экран. Поместив приведенный выше код туда, вы всегда автоматически выполните вход в facebook.

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

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

person Stefan Arentz    schedule 06.02.2010
comment
Спасибо . отлично работает! но я не знаю, почему '[выход из сеанса];' не работает !! я редактирую свои коды на вопрос, посмотрите - person Momi; 06.02.2010