我想在name
中显示lastName
和UITableViewCell
。我有一个包含大量数据的数组,我从数据库中检索,几乎所有我需要的是在数组中,诀窍是过滤并显示我想要的结果。
我有以下代码来过滤searchBar
上输入的内容并添加到NSMutableArray
:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"usuario.username contains [cd] %@", searchText];
NSArray *filtroUsuario = [name filteredArrayUsingPredicate:predicate];
searchResults = [filtroUsuario valueForKeyPath:@"@distinctUnionOfObjects.usuario.nome"];
我使用@distinctUnionOfObjects
因为我正在过滤的对象不是user
个对象,因此我想检索user
个值,因为有些对象指向相同的{{1}我得到重复的user
s。
将信息放在name
上的代码是这样的:
UITableView
一切正常。我的麻烦是,现在我想在单元格上再显示一个键,因此键路径为cell.textLabel.text = searchResults[indexPath.row];
。我如何将两个值放在一起?
我尝试过玩这条线:
usuario.sobrenome
得到了一些有趣的结果,但不是我期待的结果。
答案 0 :(得分:1)
看起来您应该能够使用@distinctUnionOfObjects.usuario
,因此您的结果是user
个对象的数组(或其他具有您需要的键的对象)。然后在表格视图单元格设置中执行:
id user = searchResults[indexPath.row];
cell.textLabel.text = [user valueForKey:@"nome"];
cell.otherTextLabel.text = [user valueForKey:@"sobrenome"];