Tag: uisearchbar

UISearchController导致黑屏Swift 2.0

在Swift 2.0的iOS 9中,我有一个奇怪的问题。 我在我的tableViewController添加了UISearchController ,但是会导致一个奇怪的黑屏问题。 当我按search栏和写东西,它显示我的过滤结果没有任何问题,但当我点击另一个标签栏button,如书签 ,然后当我点击tableviewcontroller再次最受欢迎 ,它显示黑屏像屏幕截图。 有我的tableViewController ; import UIKit class CitiesTableViewController: UITableViewController, UISearchResultsUpdating { // MARK: – Class Properties private var cities = [String]() private var veterinaries = [Veterinary]() private var filteredVeterinaries = [Veterinary]() private var resultSearchController: UISearchController! // MARK: – TableViewController Life Cycle Methods override func viewDidLoad() { super.viewDidLoad() self.getCitiesList() self.configureResultsSearchController() […]

每次点击取消button时,search栏会跳下一行

我已经实现了一个UISearchBar来search外部API中的项目目录。 searchfunction按预期工作,但问题是,每次按下search栏文本字段右侧的取消button,整个search栏向下移动一行,看起来像是推动整个表视图也是如此。 因此,如果我在search栏文本字段中input一个字母,然后按取消,search栏文本字段向下移动44px,这是行高度,并且表视图本身也被按下相同的数量。 如果我连续按input的东西,然后按取消,search栏将进一步向下移动视图。 任何build议将是伟大的! 这是我的代码: import Foundation import UIKit import ItemLogger private extension Selector { static let dismiss = #selector(SearchVC.dismissView) } extension SearchVC: UISearchResultsUpdating { func updateSearchResultsForSearchController(searchController: UISearchController) { let searchBar = searchController.searchBar let scope = searchBar.scopeButtonTitles![searchBar.selectedScopeButtonIndex] filterContentForSearchText(searchController.searchBar.text!, scope: scope) } } extension SearchVC: UISearchBarDelegate { func searchBar(searchBar: UISearchBar, selectedScopeButtonIndexDidChange selectedScope: Int) { filterContentForSearchText(searchBar.text!, […]

使用UISearchController自定义UISearchBar

UISearchController的文档说,你可以重载- searchBar提供一个UISearchBar的自定义子类供控制器使用。 自定义search栏没有被使用,并且它自己的委托方法调用正确,但是当search栏改变时, UISearchResultsUpdating方法不再被调用。 我是否需要手动进行大量的接线工作,或者是否有些东西让控制器performance得与本机提供的search栏一样?

如何左alignmentUISearchBar占位符文本

我需要做一个像这样的自定义search栏。 我遇到的问题是左alignment占位符文本,以及将search图标放在右侧。 我有一个试图在UIImageView使用的search图标的PNG,并将UIImageView设置为UISearchBar的UITextField的rightView UITextField 。 这个解决scheme还没有奏效,我用完了想法。 有没有人有办法解决吗?

如何防止search栏在滚动消失? iOS Swift

我正在创build一个联系应用程序。 我有一个滚动条在我的表视图的顶部。 当我向下滚动search栏消失。 如何防止search栏在滚动消失? 我希望它像第一张照片一样始终保持在页面顶部。 这是我的故事板的图片: 这是我的视图控制器代码,如果解决scheme不在故事板中: class ViewController: UITableViewController, UITableViewDataSource, UITableViewDelegate, UISearchResultsUpdating { //manages search bar var searchController:UISearchController! var contacts = [Contact]() //array to hold contacts that match the search results var filteredContacts = [Contact]() override func viewDidLoad() { super.viewDidLoad() //initialize the defaults manager class NSUserDefaultsManager.initializeDefaults() //search controller searchController = UISearchController(searchResultsController: nil) searchController.searchBar.sizeToFit() tableView.tableHeaderView […]

以编程方式显示UISearchController的search栏

注1:这个问题涉及在它更新的表视图之外添加一个UISearchController的search栏 – 而不是表视图的标题。 注2:一些试错导致我find了解决办法。 请参阅下面的答案 。 我是iOS开发新手,正在努力使用UISearchController类。 我有一个视图控制器,在我的视图控制器的视图中,我打算在表视图上方有一个search栏。 我想要search栏被链接到一个UISearchController。 由于界面生成器没有附带UISearchController,我正在以编程方式添加控制器。 实例化一个UISearchController后,我试图以编程方式将search控制器的search栏添加到我的视图,但没有成功。 我试图设置search栏的框架,并给它自动布局约束,但这两种方法都没有为我工作(即当我运行应用程序,什么都没有出现)。 这是我尝试过的最新代码: let searchController = UISearchController(searchResultsController: nil) // Set the search bar's frame searchController.searchBar.frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: 50) // Constraint to pin the search bar to the top of the view let topConstraint = NSLayoutConstraint(item: searchController.searchBar, attribute: NSLayoutAttribute.Top, relatedBy: […]

UITextField在iOS 7的UISearchBar中

我正在尝试使用其中的TextField完成与UISearchBar相同的外观,就像在我的iOS 6应用程序中一样。 我试图用几种方法编码,但还没有成功。 问题是,自iOS 7以来,我无法以任何方式更改TextField的框架。结果是,我的TextField获取了NavigationBar中的所有空间,并覆盖了右侧的UIBarButtonItem(菜单button)。 见下图: 截图http://oi44.tinypic.com/2ufewx0.jpg iOS 6代码: 这是我在iOS 6中编写的代码,我可以将TextFields框架设置为我喜欢的任何内容。 UITextField *sbTextField = (UITextField *)[searchBar.subviews lastObject]; [sbTextField removeFromSuperview]; CGRect rect = searchBar.frame; rect.size.height = 32; rect.size.width = 210; sbTextField.frame = rect; [sbTextField setAutoresizingMask:UIViewAutoresizingFlexibleBottomMargin]; UIBarButtonItem *searchBarNavigationItem = [[UIBarButtonItem alloc] initWithCustomView:sbTextField]; [[self navigationItem] setLeftBarButtonItem:searchBarNavigationItem]; 以上代码在iOS 7中的结果: ![iOS 7 look] iOS 7代码: 与iOS 7不同的是,您需要使用子视图才能将UITextField添加到UISearchBar / UINavigationBar。 通过这样做,我还没有能够改变它的框架。 […]

当通过becomeFirstResponder将焦点分配给UISearchController的UISearchBar时,键盘不会出现

我花了相当多的时间在网上search,并与其他开发人员讨论这个问题无济于事。 在这个SOpost中描述了确切的问题( 关注UISearchBar,但键盘没有出现 ),虽然已经有很多年了。 我最近在IB中使用了弃用的UISearchDisplayController和UISearchBar,并通过iOS8的代码切换到了UISearchController。 然而,我得到的问题是,焦点分配正确(你可以告诉,因为取消button在视图加载后在search栏右侧animation),但键盘不显示。 这是我的代码。 。H @property (nonatomic, strong) UISearchController *searchController; .M – (void)viewDidLoad { [super viewDidLoad]; … [self initializeSearchController]; …. } – (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; [self.searchController setActive:YES]; [self.searchController.searchBar becomeFirstResponder]; } – (void)initializeSearchController { self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil]; self.searchController.searchResultsUpdater = self; self.searchController.dimsBackgroundDuringPresentation = NO; self.searchController.delegate = self; self.searchController.searchBar.delegate = self; [self.searchController.searchBar […]

检测用户停止/暂停在Swift中input

我已经挖出了stackoverflow,并find了我转换为Swift的解决scheme,似乎并没有工作,select器仍在执行。 func searchBar(searchBar: UISearchBar, textDidChange searchText: String) { self.filter.searchTerm = self.searchBar.text NSObject.cancelPreviousPerformRequestsWithTarget(self, selector: "getHints", object: nil) NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "getHints", userInfo: nil, repeats: false) } 有没有更好的方法来迅速做到这一点? 谢谢!

粘滞的search栏和节标题行为类似于本机通讯录应用程序

我想在iPhone联系人应用程序中复制search栏的粘性行为。 当用户向下滚动视图时, search栏也随着视图一起下移 : 如果用户向上滚动,则表格相应地滚动,具有以下两种行为: (1)search栏保持固定在顶部 ,并且 (2) 后面的部分标题在search栏下方正确停止 : 当下一节标题出现时,前面的标题在search栏下消失: 注意:段落索引控件(右侧的az)也出现在search栏的顶部 。 Ergo,摆弄contentInset会把它的索引控件一起向下推。 我创build了一个自定义UIViewController ,添加了一个UITableView ,将其contentInset设置为search栏的高度。 我创build了一个UIView ,添加了search栏作为它的子视图,然后将UIView添加到UITableView 。 但是,如上所述,当用户滚动时,节标题仍然保持在零位,而不是在标题高度。 此外,节标题索引控制​​位置受到不利影响。 我会很感激解决这个问题。