在UITableView中搜索时如何在按钮操作上获取搜索显示项

时间:2013-08-19 06:18:29

标签: iphone ios uitableview uisearchbar

我有UITableView searchDisplayController和表视图中的按钮作为contentView。

我在表格视图中显示带字典的数组。当我用searchBar搜索时,我从数组中获取了一个搜索项。

现在我想要的是,当我使用searchBar搜索时,我希望在按钮操作上获得该对象。

按钮操作代码

-(void)getClickObject:(UIButton *)sender
{
UITableViewCell *cell = (UITableViewCell *)sender.superview.superview;
NSIndexPath *path = [listOfProductsTable indexPathForCell:cell];
}

在上面的方法中,我在表视图中获取索引对象

-(void) filterForSearchText:(NSString *) text scope:(NSString *) scope
{
[searchResultArry removeAllObjects];
NSPredicate *filterPredicate = [NSPredicate predicateWithFormat:@"SELF.name contains[c] %@",text]; 
searchResultArry = [NSMutableArray arrayWithArray:[nameArry filteredArrayUsingPredicate:filterPredicate]];

 }
 -(BOOL) searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString
 {
 [self filterForSearchText:searchString scope:[[[[self searchDisplayController] searchBar] scopeButtonTitles] objectAtIndex:[[[self searchDisplayController] searchBar] selectedScopeButtonIndex] ]];

return YES;
 }

-(BOOL) searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchScope:(NSInteger)searchOption
{
[self filterForSearchText:self.searchDisplayController.searchBar.text scope:
 [[self.searchDisplayController.searchBar scopeButtonTitles] objectAtIndex:searchOption]];

return YES;
}

我希望在表格视图中搜索按钮操作时获取单元格对象

1 个答案:

答案 0 :(得分:0)

设置单元格内容唯一的按钮标记值,然后使用viewWithTag方法获取按钮实例

UIButton *button=(UIButton *)[cell viewWithTag:3];//here 3 is the tag i set for button in cell

您可以使用按钮实例