3

В настоящее время я настроил свое приложение, чтобы воспользоваться реализацией XAuth услуг Twitter через ShareKit. Те, кто знает об ShareKit и реализовали его в своем собственном приложении либо в целях тестирования, либо для добавления огромного массива сервисов, которые он реализует в вашем приложении, вам будет хорошо, что у нас есть SHKTwitter.h и .m и SHKTwitterForm.h и .m, которые можно найти в папке Sharers в исходном коде.ShareKit - Как получить доступ к имени пользователя Twitter

Именно здесь я начал реализовывать свою собственную поддержку TwitLonger для ShareKit. Однако я столкнулся с несколькими проблемами. Для тех, кто не использовал API TwitLonger, им нужно только имя пользователя Twitter, чтобы на самом деле отправить Tweet. Тем не менее, я изо всех сил пытаюсь вытащить введенное имя пользователя Twitter из SHKTwitterForm.

В настоящее время, поговорив с Nate (разработчиком ShareKit), я собрал это, чтобы вытащить ключ имени пользователя из NSMutableDictionary, сохранить в NSString и затем сохранить его в объект NSUserDefault. Затем это вызывается, когда реализуется моя реализация TwitLonger API, создавая новую NSString, созданную из объекта NSUserDefault.

В моем SHKTwitter.m Я создал подкласс формы авторизации (void) authorFormSave: (SHKFormController *) по указанию Nate. Как вы можете видеть ниже, это то, что у меня есть.

- (void)authorizationFormSave:(SHKFormController *)form 
{ 

NSMutableDictionary *dict = [form formValues]; 

NSArray *keys = [dict allKeys]; 
NSString *usernameString = [[keys valueForKey:@"username"] componentsJoinedByString:@""]; 


[[NSUserDefaults standardUserDefaults] setObject:usernameString forKey:@"twitter_name_preference"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 
} 

Однако всякий раз, когда я называю это NSUserDefault объект в новый NSString в моем SHKTwitterForm.m, он возвращает ноль.

У кого-нибудь есть идеи относительно того, как я мог бы достичь этого еще более просто или я делаю это правильно? Я чувствую себя так, как будто я неправильно захватил объект в NSMutableDictionary. Любая помощь будет оценена!

+0

В вашем примере выше вы задаете ваши ключи массива для значения. NSArray не отвечает на valueForKey. –

ответ

1

Вам нужно задать объект словаря для valueForKey.

Например:

NSString *usernameString = [dict valueForKey:@"username"]; 

 Смежные вопросы

  • Нет связанных вопросов^_^