0

dict と呼ばれる辞書出力を作成した TWRequest があります。この結果をtableViewのカスタムセルに出力したいと思います。トリックビットは、個々のツイートが分割され(「テキスト」がコロンで区切られたセクションに分割されるため)、配列に配置されることです。辞書から「テキスト」コンポーネントを取り出してこれを適用する方法に苦労していますテーブルビューに。これが私のコードです...どんなアドバイスでも大歓迎です。前もって感謝します。

    - (void)fetchTweets
{
    // Do a simple search, using the Twitter API
    TWRequest *request = [[TWRequest alloc] initWithURL:[NSURL URLWithString:
                                                         @"http://search.twitter.com/search.json?q=myhashtagforsearchgoeshere"] 
                                             parameters:nil requestMethod:TWRequestMethodGET];

    // Notice this is a block, it is the handler to process the response
    [request performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
    {
        if ([urlResponse statusCode] == 200) 
        {
            // The response from Twitter is in JSON format
            // Move the response into a dictionary and print
            NSError *error;        
            NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:&error];
            NSLog(@"Twitter response: %@", dict);                           
        }
        else
            NSLog(@"Twitter error, HTTP response: %i", [urlResponse statusCode]);
    }];
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        static NSString *CellIdentifier = @"MyCell";
        // I'm using a custom cell
    CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];



        // then I want to grab the text part only from the tweets
        NSString *tweetText = [[dict objectForKey:@"text"]objectAtIndex:indexPath.row];  
        // then I place the output into an array (the tweet is carved up into 3 components separated by a colon
    NSArray *tweetComponents = [tweetText componentsSeparatedByString:@":"]; 
                    NSLog(@"Tweettext: %@", tweetText);  

    // then I link this to my labels in my custom cell using objectatindex
        cell.myHeader.text = [tweetComponents objectAtIndex:0];
        cell.myDetails.text = [tweetComponents objectAtIndex:1];
        cell.myDate.text = [tweetComponents objectAtIndex:2];

        return cell;
    }
4

0 に答える 0