Questions tagged «uisearchdisplaycontroller»

11
如何使用UISearchDisplayController / UISearchBar过滤NSFetchedResultsController(CoreData)
我正在尝试在基于CoreData的iPhone应用程序中实现搜索代码。我不确定如何进行。该应用程序已经具有一个NSFetchedResultsController,该谓词可以检索主TableView的数据。我想确保在更改过多代码之前,我走在正确的道路上。我很困惑,因为这么多示例都是基于数组而不是CoreData的。 这里有一些问题: 我是否需要第二个NSFetchedResultsController仅检索匹配项,还是可以使用与主要TableView相同的项? 如果使用相同的方法,是否简单到清除FRC缓存,然后更改handleSearchForTerm:searchString方法中的谓词?谓词是否必须包含初始谓词以及搜索词,或者它还记得它最初使用谓词来检索数据吗? 我如何回到原始结果?我是否只是将搜索谓词设置为nil?这样一来就不会杀死用于检索FRC结果的原始谓词吗? 如果有人在使用FRC进行搜索时有任何代码示例,我将不胜感激!

7
在UITableViewController中使用UISearchDisplayController时断言失败
我一直在尝试向我的应用程序中的TableViewController添加简单的搜索功能。我遵循了Ray Wenderlich的教程。我有一个带有一些数据的tableView,在情节提要中添加了搜索栏+显示控制器,然后有了以下代码: #pragma mark - Table View - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"BreedCell" forIndexPath:indexPath]; //Create PetBreed Object and return corresponding breed from corresponding array PetBreed *petBreed = nil; if(tableView == self.searchDisplayController.searchResultsTableView) petBreed = [_filteredBreedsArray objectAtIndex:indexPath.row]; else petBreed = [_breedsArray objectAtIndex:indexPath.row]; cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; cell.textLabel.text = …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.