3

iPhone開発初心者です。私のアプリは、を使用してサーバーからデータを取得するための URL 要求を送信していますNSURLConnection。私はデータをJSONフォーマットで取得してNSMutableArrayおり、辞書の配列として保存しています。だから私は辞書の配列を持っています。に特定のデータを表示する必要がありますUITableViewCell

私のコードはここにあります...

-(IBAction)ButtonTapped:(id)sender
{
     NSString *strURL=[NSString stringWithFormat:@"URl Name here"];
     NSURL *url=[NSURL URLWithString:strURL];
     self.request=[NSURLRequest requestWithURL:url]
     self.nsCon=[[NSURLConnection alloc] initWithRequest:request delegate:self];

     if(self.nsCon)
     {
        self.receivedData=[[NSMutableData alloc] init];
     }
     else
     {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Error",@"") message:NSLocalizedString(@"Not Connected Other View !!",@"") delegate:nil cancelButtonTitle:NSLocalizedString(@"OK",@"") otherButtonTitles:nil];
        [alert show];
        [alert release];
     }
}

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
    // receivedData is an instance variable declared elsewhere.
    [receivedData setLength:0];
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    // Append the new data to receivedData.
    // receivedData is an instance variable declared elsewhere.
    [receivedData appendData:data];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
    // inform the user

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Error",@"") message:NSLocalizedString(@"Connection failed !!",@"") delegate:nil cancelButtonTitle:NSLocalizedString(@"OK",@"") otherButtonTitles:nil];
    [alert show];
    [alert release];

}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
    NSString *responseString = [[NSString alloc] initWithData:self.receivedData encoding:NSUTF8StringEncoding];     
    self.theDictionary= [[NSMutableDictionary alloc] init];
    self.theDictionary = [responseString JSONValue];

    self.arrofDictionary=[[NSMutableArray alloc] init];
     [self.arrofDictionary addObject:self.theDictionary];

    NSLog(@"data length - %@ ",[self.theDictionary objectForKey:@"today"]);

    // release the connection, and the data object
    [connection release];
    [receivedData release];

    self.tblList=[[UITableView alloc] initWithFrame:CGRectMake(0,80,320,370) style:UITableViewStyleGrouped];
    self.tblList.delegate=self;
    self.tblList.dataSource=self;
    [self.view addSubview:self.tblList];

}

// コンソールにデータ表示

(
        {
        "date_time" = "2012-08-31 09:30:25";
        id = 99;
        language = en;
        name = Tt;
        score = 656;
    },
        {
        "date_time" = "2012-08-31 10:08:52";
        id = 103;
        language = en;
        name = Fg;
        score = 567;
    },
        {
        "date_time" = "2012-08-31 08:22:38";
        id = 87;
        language = en;
        name = Eree;
        score = 565;
    },
)

次に、名前スコアを表示するにはどうすればよいですUITableViewCellか??

4

1 に答える 1

1

表示されたデータは、辞書オブジェクトの配列(yourArray)にあります。次のコードを使用します。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {

        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];

    }
     cell.textLabel.text = [[yourArray objectAtIndex:indexPath.row]  objectForKey:@"name"];
    cell.detailTextLabel.text = [[yourArray objectAtIndex:indexPath.row]  objectForKey:@"score"];



    return cell;
}

お役に立てると思います。

于 2012-08-31T10:36:06.517 に答える