0

我是IOS的新手。我从 WebService 获取数据并使用 json 序列化将该数据存储到 MutableArrays 中。但现在我必须在 TableView 中显示该数据,例如可扩展和可折叠单元格。请给我发送示例代码来解决这个问题。

  NSMutableArray *arr=[NSMutableArray alloc]init];

    NSString *Str_Menu_desc=[NSString alloc]init];

    NSURL *url=[NSURL URLWithString:@"http://www.google.com/CategoryInfo.php"];

    NSData *data=[NSData dataWithContentsOfURL:url];

    NSError *err;

    json=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&err];


    NSEnumerator *enu=[json objectEnumerator];

    while (dic =(NSDictionary *)[enu nextObject])
    {

            [arr addObject:[dic1 objectForKey:@"menu_name"]];

    }


    -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;

{

    return [arr count];

}


    -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;


{

    cell=[[UITableViewCell alloc]init];
    cell.textLabel.text=[arr objectAtIndex:indexPath.row];
    return cell;


}


    -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;

{

    NSString *local=[arr objectAtIndex:indexPath.row];


       NSURL *url=[NSURL URLWithString:@"http://www.google.com/SubCategoryInfo.php"];

    NSData *data=[NSData dataWithContentsOfURL:url];

    NSError *err;

    json=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&err];


    NSEnumerator *enu=[json objectEnumerator];

    while (dic =(NSDictionary *)[enu nextObject])
    {
        if (local isEqual:[dic objectForKey:@"category_name"]])
        {

            Str_Menu_desc=[NSString stringWithFormat:@"%@",[dic objectForKey:@"Sub_Category_name"]];

        }
    }



}

现在,我使用选定的类别名称获得了子类别名称。我必须在可展开/可折叠的 TableView 中显示类别和子类别名称。提前致谢。

4

1 回答 1

0

您所说的可扩展-可折叠单元是什么意思?可能是这样的:展开/折叠 TableView 部分

以另一种方式,在 -tableView:tableView didSelectRowAtIndexPath: 方法中接收到的数据,放入新的 UITableViewController 并将其推送到视图层次结构中,代码如下:[self.navigationController pushViewController:content animated:YES];记住:必须先创建 navigationController,否则代码将无法工作。

于 2013-10-28T15:07:34.237 回答