Ответ:
Наконец, я использую уведомления, которые я считаю элегантным способом сделать это.
Спасибо тебе, Алан.
У меня есть логин на Facebook (через facebook-ios-sdk) в приложении, основанном на вкладках.
Я инициализировал "Facebook" в своем приложении Delegate.
У меня есть кнопка «Connect Facebook» в настройке ViewController Tab.
Я могу войти в Facebook через нажатие кнопки «Connect Facebook» UIB (в настройке ViewController Tab), а затем вызывается «- (void) fbDidLogin» (в appDelegate).
Все хорошо.
Но мой вопрос заключается в том, как обновить UIButton "Connect Facebook" (в настройке ViewController Tab) до "Подключен Facebook"?
Могу ли я сделать что-то подобное в appDelegate:
- (void)fbDidLogin
{
NSUserDefaults * userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:[self.facebook accessToken] forKey:@"FBAccessTokenKey"];
[userDefaults setObject:[self.facebook expirationDate] forKey:@"FBExpirationDateKey"];
[userDefaults synchronize];
if (settingViewController) {
settingViewController.facebookButton.text = @"facebook connected";
}
}
Спасибо.
Что я пробовал:
Я поставил это в настройке ViewController Tab, но это не вызывалось, когда приложение возвращалось с экрана входа в Facebook. Поэтому я думаю, что мне, возможно, придется использовать делегат в "- (void) fbDidLogin" в appDelegate?
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self checkAccStatusAndUpdateButton];
}