iphone:根据主视图中选择的单元格在详细视图中显示数据

时间:2012-02-13 07:37:08

标签: iphone objective-c ios uitableview

我是JSON解析来获取我的tableviews的数据。如果静态指定,我成功显示数据。在我的主视图中,它显示了一个类别列表。当我选择一个单元格时,我需要通过传递子类别来显示子类别来自mainview的categoryid。

NSDictionary *dict = [mmenuitems objectAtIndex:indexPath.row];
NSString *selectID = [NSString stringWithFormat:@"You selected %@",[dict objectForKey:@"id"]];

使用此代码,我在 selectID 中正确获得了categoryID。

我需要将此ID传递给subCatView,其中数据来自 URL:http://mysite.in/getJson.php?method = showMenu&amp; res_id = 1&amp; cat = < /强>

我需要将来自mainView的catID放入上面URL中的cat。

如何更改mainView中的didSelectRowAtIndexPath和subCatView中的viewDidLoad?

1 个答案:

答案 0 :(得分:1)

您需要做的是: - 1.)首先在subCatView控制器中创建一个NSString对象。 2.)之后,当您传递给subCatView时,在NSString对象中设置您的类别值。 3.)访问subCatView控制器viewDidLoad中的该值或您想要的其他方法。

一些代码可以让您了解您必须做的事情: -  在subCategoryViewController .h文件中执行: -

NSString *categorystring;

制作属性并合成它。

在主视图控制器中执行: -

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    subCategoryViewController *subCatView=[[[subCategoryViewController alloc]initWithNibName:@"subCategoryViewController" bundle:nil]autorelease];
    NSDictionary *dict = [mmenuitems objectAtIndex:indexPath.row];
NSString *selectID = [NSString stringWithFormat:@"You selected %@",[dict objectForKey:@"id"]];

    [subCatView setCategorystring:cell.textLabel.text];
    [[self navigationController]pushViewController:subCatView animated:YES];
}

现在在subCategoryViewController文件中访问此字符串。