首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MGTwitterEngine和iPhone

MGTwitterEngine和iPhone
EN

Stack Overflow用户
提问于 2009-07-29 04:06:08
回答 2查看 4K关注 0票数 2

我下载了MGTwitterEngine并添加到我的iPhone项目中。它正在连接和获取雕像,我可以通过将它们转储到NSLog中来判断。但是,我不知道如何解析这些调用才能将它们添加到表中。它们以NSString的形式返回,如下所示:

代码语言:javascript
复制
      {
    "created_at" = 2009-07-25 15:28:41 -0500;
    favorited = 0;
    id = 65;
    source = "<a href=\"http://twitter.com/\">Twitter</a>";
    "source_api_request_type" = 0;
    text = "The wolf shirt strikes again!! #sdcc :P http://twitpic.com/blz4b";
    truncated = 0;
    user =         {
        "created_at" = "Sat Jul 25 20:34:33 +0000 2009";
        description = "Host of Tekzilla on Revision3 and Qore on PSN. Also, a geek.";
        "favourites_count" = 0;
        "followers_count" = 0;
        following = false;
        "friends_count" = 0;
        id = 5;
        location = "San Francisco";
        name = "Veronica Belmont";
        notifications = false;
        "profile_background_tile" = false;
        "profile_image_url" = "http://blabnow.com/avatar/Twitter_10350_new_twitter_normal.jpg";
        protected = 0;
        "screen_name" = Veronica;
        "statuses_count" = 2;
        "time_zone" = UTC;
        url = "http://www.veronicabelmont.com";
        "utc_offset" = 0;
    };

有没有人可以告诉我其他人是如何在他们的项目中使用它的?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-07-29 05:53:10

您在控制台中看到的是NSDictionary的NSLog,而不是NSString。来自Matt Gemmell的MGTwitterEngine Readme

发送到这些方法的值都是包含每个状态或用户或直接消息的NSDictionary的NSArrays,如果需要,还可以使用子字典(例如,时间轴方法通常返回状态,每个状态都有一个子字典,提供有关发布该状态的用户的信息)。

因此,您传递给NSLog()语句的任何对象实际上都是一个字典,您可以通过调用以下内容来访问字段:

代码语言:javascript
复制
NSString *createdAtDate = [record valueForKey:@"created_at"];
NSString *source = [record valueForKey:@"source"];
// etc...

其中,记录是对象。请记住,用户字段是一个子字典。您可以这样访问它:

代码语言:javascript
复制
NSDictionary *userDict = [record valueForKey:@"user"];
NSString *name = [userDict valueForKey:@"name"];
NSString *location = [userDict valueForKey:@"location"];
// etc...

实际上,您可以使用请求中返回的NSArray作为表视图的数据源,然后根据-cellForRowAtIndexPath表视图委托中的索引提取所需的数据源。

诚挚的问候,

票数 8
EN

Stack Overflow用户

发布于 2009-12-05 14:51:00

对于其他可能在这里找到方法的人,这里有一种方法来分享结果。(来自一个新手,所以不要认为这是标准的甚至是正确的方式)

关键(双关语:D)是在适当的委托方法中使用字典。查看Matt Long关于该主题的示例代码in another thread

要包成这样的东西:

代码语言:javascript
复制
[myTwitterEngine getSearchResultsForQuery:@"#ironsavior"];

他的例子是这个,在委托方法中:

代码语言:javascript
复制
- (void)searchResultsReceived:(NSArray *)searchResults 
                   forRequest:(NSString *)connectionIdentifier
{
    if ([searchResults count] > 0)
    {
        NSDictionary *result = [searchResults objectAtIndex:0];

        NSString *fromUser = [result valueForKey:@"from_user"];
        NSString *fromUserID = [result valueForKey@"from_user_id"];
        // ...
        NSString *text = [result valueForKey@"text"];

        NSLog(@"User %@(%@): %@", fromUser, fromUserID, text);
    }
}

这将为您提供一条非常简单的消息:"User username(userid):message“。

我不确定最好的方法是什么,我想返回一个字典或数组,您可以在实现中的其他地方使用它们。或者只是返回原始数组并在其他地方解析它。

有关更多信息,请查看其他帖子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1197996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档