UISearchController的默认行为似乎是在UISearchBar中输入字符后立即显示一个空表。我正在实现的搜索不会在输入字符时进行搜索,而是在点击“搜索”按钮时进行搜索。因此,在实际搜索发生之前,我不想显示一个空表。我该如何做到这一点?我试图将表格设置为隐藏,直到点击搜索按钮,但看起来出现的空表格与UISearchController表格不同,因为没有在该表上调用数据源方法。 最佳答案 您看到的空TableView来自您的搜索结果Controller,“当用户在搜索栏中输入文本时”,它由UISearchControlle
所以我刚刚更新到iOS11.2,现在我的UISearchController的搜索栏乱七八糟。当搜索处于事件状态时,搜索栏区域后面的背景变得不可见/清晰/透明。我构建了一个测试项目以确保我没有发疯。这是原始设置:navigationBar.translucent=YES;navigationBar.barTintColor=[UIColororangeColor];self.navigationItem.searchController=myUISearchController;它应该是这样的:但是如果我使用大标题和背景图片,那么结果是这样的:navigationBar.prefers
在iOS8中,UISearchDisplayController被弃用,使UISearchController可以选择向应用程序添加搜索行为。这迫使开发人员创建一个单独的UITableviewController来显示搜索结果——让我们为resultsTableViewController调用这个tableViewController。此线程中详细介绍了如何从UISearchDisplayController迁移到UISearchController:searchDisplayControllerdeprecatediniOS8在我的应用程序中,我使用了interfacebuilder
我使用UISearchViewController来控制我的应用程序的搜索内容。我看到有一个名为hidesNavigationBarDuringPresentation的属性用于处理导航栏的可见性,但我想做的是在演示期间隐藏标签栏,我找不到任何属性来执行此操作。任何解决方法? 最佳答案 你是对的,没有用于显式显示和隐藏标签栏的属性,但是你自己实现它很容易:让您的ViewController(不是UISearchController)实现UISearchControllerDelegate。将您的ViewController分配给搜索
我有一个现有的应用程序(XCode7.1、Storyboards、Objective-C),它有一个UITabController设置为初始ViewController,它管理4个其他ViewController、一个UITableVC和三个UIViewVC。我正在尝试添加UISearchBar和UISearchDisplayController;所有的教程都告诉我我需要一个UINavigationController。由于这些年(3年以上)我的应用在没有一个的情况下也能正常工作,所以我不明白为什么我需要它来实现搜索功能。谁能帮我验证一下:我是否需要UINavigationContro
我有一个UIViewController,其中有一个UITableView,在该tableview中我有多个部分,其中有一些项目,我必须在该tableview中搜索项目名称。我已经在我的ViewController中声明了这一点letsearchController=UISearchController(searchResultsController:nil)overridefuncviewDidLoad(){super.viewDidLoad()searchController.dimsBackgroundDuringPresentation=falsedefinesPresenta
我们在使用UISearchController作为导航栏中的项目时遇到了一个奇怪的问题。它被设置为左栏按钮项,当用户点击开始搜索时,搜索栏会扩展到屏幕右侧。下面是创建UISearchController的代码:resultSearchController=({letcontroller=UISearchController(searchResultsController:nil)controller.searchResultsUpdater=selfcontroller.dimsBackgroundDuringPresentation=falsecontroller.hidesNavi
iOS11我在表的标题View上有一个UITableViewController和一个UISearchController,使用以下代码:if(searchController==nil){searchController=[[UISearchControlleralloc]initWithSearchResultsController:nil];searchController.dimsBackgroundDuringPresentation=false;searchController.searchResultsUpdater=self;searchController.searc
我正在尝试在我的应用程序UI中放置一个UISearchController。布局是:黄色:ViewController红色:另一个ViewController黑色:YellowViewController中的容器我想将UISearchController的UISearchView放在黑色容器中。我的代码如下:self.searchController=[[UISearchControlleralloc]initWithSearchResultsController:searchResultsViewController];UISearchBar*searchBar=self.searc
搜索Controller的系统行为:转到iPhone设置滑动显示搜索栏点击搜索栏TableView现在是灰色的,如果我触摸任何地方(不在searchBar中),searchBar将隐藏我输入任何文本,tableView现在颜色正常,我可以点击任何搜索到的单元格。在我的应用程序中,点击任何文本后tableView仍然是灰色的。我无法点击任何搜索到的单元格。不同之处还在于,当我搜索时,我会使用updateSearchResultsForSearchController更新旧的tableView(搜索后我没有不同的tableView),然后再使用reloadData。问题是如何在搜索Cont