我的two arrays
(TableView
和cell.textLabel
)中有cell.detailTextLabel
(名字,姓氏)
我想在此TableView
中创建一个搜索栏。
我用两个字符串创建了类。
@interface clientContent : NSObject { }
@property (nonatomic, strong) NSString *clName;
@property (nonatomic, strong) NSString *clLast;
@end
然后我在主类(具有Table视图)中创建了数组并添加了我的信息 像这样
for (int i = 0; i < PQntuples(clientQuery); i++)
{
clientContent *cc = [[clientContent alloc] init];
cc.clName = [[NSString alloc] initWithUTF8String:PQgetvalue(clientQuery, i, 0)];
cc.clLast = [[NSString alloc] initWithUTF8String:PQgetvalue(clientQuery, i, 1)];
[allClients addObject:cc];
}
之后我将其加载到tableView
;
clientContent *cc = [allClients objectAtIndex:indexPath.row];
cell.textLabel.text = cc.clName;
cell.detailTextLabel.text = cc.clLast;
}
然后我用
-(BOOL)searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString
如何使它正确?我无法理解..
答案 0 :(得分:0)
您应该覆盖searchDisplayController:shouldReloadTableForSearchString:UISearchDisplayController的委托方法,并根据需要过滤searchResultsTableView的数据源数组。
您可以在您的数组(clientContent对象数组)上应用谓词并更改dataSource数组。使用谓词,您可以在两个字段(clName&amp; clLast)上过滤您的数组。
获取与谓词相关的帮助