Questions tagged «uisearchbar»

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



8
NavigationBar中的iOS 11 SearchBar
在iOS 11中,Apple通过重新设计拐角和变大了高度来重新设计UISearchBar。将UISearchBar添加到navigationBar相当简单,只需使用即可将其设置为navigationItem的titleView navigationItem.titleView = searchBar。 但是,在iOS 11中,它似乎不再能正常工作。看看我们使用iOS 10和iOS 11比较相同设置的屏幕 iOS 10 iOS 11 您可以清楚地看到SearchBar增大了NavigationBar的大小,但是条形按钮没有正确对齐。而且searchBar不再使用左侧的可用空间。 如此处所述,将searchBar放入包装器视图中以获取iPad上的“取消”按钮,UISearchBar中未显示“取消”按钮,似乎也不起作用了,因为那时根本没有可见的searchBar。 如果有人遇到类似问题或已经知道如何解决/改进此问题,我将非常感激。 这是使用Xcode 9 Beta 4构建的。也许将来的版本会解决此问题。 更新: 由于此问题尚未解决,因此我们决定使用以下解决方案。我们在NavBar中添加了一个新的UIBarButtonItem,然后提供了一个新的ViewController,我们只在其中放置了searchBar,而在NavBar中什么也没用,这似乎可行。使用选择的答案可能是最好的解决方案,因为具有iOS 11的Apple希望我们使用此新设计,即使它不能给我们最初想要的结果。解决此问题的另一种方法可能是自定义SearchBar,但这是另一个主题。
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.