我正在使用initWithNibName將細胞推到細節視圖,但我想使用單個故事板而不是有大量的nib文件。當單擊單元格時,下面的代碼應該將視圖推送到子類別ViewController。這些單元格從json數據是動態的。pushViewController沒有推
它沒有給出任何錯誤。你認爲它是導航控制的問題嗎?爲了測試,我在這個視圖上添加了一個按鈕,它可以工作;當我點擊它時,它會推到下一個視圖。
- (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
它不引用表視圖。任何人都可以告訴我如何修改它,以便引用視圖中的表?
是的。這是有道理的。我想到了它,但我使用了下面的代碼來做到這一點。這不夠好嗎? @interface categoriesViewController:UIViewController { \t UITableView * tableview; } –
2011-12-18 17:19:41
這是對的,但你也需要告訴表格視圖誰是委託。您可以在故事板中連接它,將委託出口從表格視圖拖到視圖控制器。 – jrturton 2011-12-18 17:21:32
我這樣做了,但它卻沒有給出理由就開始崩潰。我想我明天會重新開始。謝謝你的時間。 – 2011-12-18 18:02:06