【发布时间】:2011-12-18 14:57:06
【问题描述】:
我使用 initWithNibName 将单元格推送到详细视图,但我想使用单个故事板而不是拥有大量 nib 文件。下面的代码应该在单击单元格时将视图推送到 subcategoriesViewController。这些单元格是来自 json 数据的动态单元格。
它没有给出任何错误。您认为这是导航控制的问题吗?只是为了测试,我在这个视图上添加了一个按钮,它可以工作;当我点击它时,它会推送到下一个视图。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDictionary *dict = [rows objectAtIndex: indexPath.row];
subcategoriesViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"subcategoriesViewController"];
controller.CATNAME = [dict objectForKey:@"C_NAME"];
controller.CATNUMBER = [dict objectForKey:@"CAT_ID"];
[self.navigationController pushViewController:controller animated:YES];
// [controller release];
}
好的,我想我找到了原因;但不知道如何解决。
这个控制器中的tableview其实是一个viewController的子视图。我复制了这些文件并创建了一个新视图,它是一个 TableViewController。这段代码在 TableViewController 中使用时可以完成这项工作,但在 tableview 是 ViewController 的子视图的控制器中使用时不会这样做。
我希望表格成为子视图,因为我想在表格上方放置图像。所以,我认为这里的问题是这一行:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
它不引用视图中的表。谁能告诉我如何修改它以引用视图中的表格?
【问题讨论】:
标签: objective-c cocoa-touch navigation pushviewcontroller