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];

}

//数据在consol中显示

(
        {
        "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 回答