如何检查segue中当前的tableview是什么

时间:2012-03-30 19:46:04

标签: objective-c ios5 uisearchdisplaycontroller uistoryboardsegue

如何检查segue中当前的tableview是什么? 由于UISearchDisplayController激活自己的tableview,我得到另一个包含结果的数组。

这是我尝试的代码,但它不起作用。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([[segue identifier] isEqualToString:@"showDetails"]) {        
        NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];    
        if (self.tableView == [[self searchDisplayController]searchResultsTableView]) {
        }
        DetailViewController *detailViewController = [segue destinationViewController];
        detailViewController.myObject = [mySearchArray objectAtIndex:indexPath.row];
    }
}

1 个答案:

答案 0 :(得分:0)

According to Apple website,在方法中:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {...}

你会检查tableView

if (tableView == self.tableView) {
    return ...;
}
// If necessary (if self is the data source for other table views),
// check whether tableView is searchController.searchResultsTableView.
return ...;