所以现在我有以下代码:
if ([[contentsList objectAtIndex:indexPath.row] isEqual:@"Hydrogen"])
{
Hydrogen *hydrogen = [[Hydrogen alloc] initWithNibName:@"Hydrogen" bundle:nil];
[self.navigationController pushViewController:hydrogen animated:YES];
hydrogen release];
}
基本上,这段代码表示如果行等于“Hydrogen”(这是UITableView中的一行),那么它将加载名为“Hydrogen.xib”的XIB但是,当我添加一个搜索栏时我的代码,搜索工作正常,但当我点击结果时,显示的行始终是表中的第一行。我如何解决这个问题,我认为它与上面代码中的行有关...
谢谢!
答案 0 :(得分:0)
您可以复制数组,但将视图控制器作为字符串放入。 然后使用:
Class detailClass = NSClassFromString([controllersArray objectAtIndex:[indexPath row]]);
UIViewController* detailViewController = [[[detailClass alloc] initWithNibName:nil bundle:nil] autorelease];
[self.navigationController pushViewController:detailViewController animated:YES];