我知道这是一个极其愚蠢的问题,但我无法弄清楚。每个答案都涉及一个 UISearchBar,这不是我所拥有的。
我正在尝试在一个 TableViewController 上显示 2 组结果。
要显示的结果
1) 一切在我的managementObjectContext
中,它是在我的viewDidLoad
2) 如果选择了谓词,则为过滤后的结果集。
在MyTableViewController
上,我有一个弹出窗口,当我单击MyTableViewController
上的UIBarButtonItem
时,它会实例化。在弹出窗口上,我在 MyTableViewController
上设置了谓词。
基本上,我想切换显示的内容,并且显示切换由我的变量是nil
(显示所有内容)还是过滤(变量设置谓词)驱动。
最佳答案
有两个 NSArray 属性 allValues
和 filteredValues
。使用 filteredValues
数组设置所有委托(delegate)/数据源属性。
接下来,当您第一次获取所有数据时,执行如下操作:
self.allValues = [someController fetchAllValues];
self.filteredValues = self.allValues;
[self.myView.tableView reloadData];
最后,无论是否选择了谓词,都更改您的 filteredValues
数组:
if (self.selectedPredicate) {
self.filteredValues = [self.allValues filteredArrayUsingPredicate:self.selectedPredicate];
} else {
self.filteredValues = self.allValues;
}
[self.myView.tableView reloadData];
关于ios - 在一个 TableViewController 中显示两组结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29868812/