我应该如何从搜索结果导航到详细视图?

时间:2011-02-15 02:40:53

标签: iphone search uitableview detailsview

应用程序的工作方式非常标准。我有一个主表视图,其中包含一个包含图像和文本的单元格。当我点击一个项目时,我将被带到由UIWebView组成的相应详细视图。可以搜索该表。当我搜索表格时,结果显示正确。但是,当我点击搜索结果中的某个项目时,我没有进入正确的详细视图。相反,我会在搜索之前看到该行中存在的项目的详细视图。

我需要调整/添加什么才能在选择搜索结果时显示正确的详细信息视图?

很抱歉没有发布代码;如果你需要特别注意某些事情,请告诉我。谢谢!

更新代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
MObjectDetailVC *mObjectDetailVC = [[MObjectDetailVC alloc] initWithNibName:@"MObjectDetailVC" bundle:nil];
mObjectDetailVC.detailURL = [[NSURL alloc] initWithString:[[mcData objectAtIndex:indexPath.row] url]];
mObjectDetailVC.title = [[mcData objectAtIndex:indexPath.row] name];
[self.navigationController pushViewController:mObjectDetailVC animated:YES];
[mObjectDetailVC release];
}

2 个答案:

答案 0 :(得分:0)

可能是您正在从旧数组中检索值。

检查您的代码是否从搜索到的数组中获取值。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
   [searchArray objectAtIndex:indexPath.row];
}

答案 1 :(得分:0)

获得搜索结果后,您应该改造数组。有两个数组:一个包含整个数据的数组和一个包含搜索查询数据的searchResultArray。如果您没有搜索,请将searchResultArray保持为NULL并继续显示当前基于原始数组的结果。但是,只要搜索完成并获得一些结果,请在searchResultArray中填充相同的内容。现在,当您单击特定行时,然后在didSelectRow方法中检查searchArray是否为空。如果它不为空,则使用此searchResultArray填充详细信息视图。