search栏没有被修复
我有两个问题:
- 我有我的屏幕上的search栏。当我滚动我的屏幕,然后我的search栏也滚动。 我想解决这个问题,或绝对。
- search不工作就像如果我inputA,那么我应该得到所有以字母A开头的单词。
我已经看到了很多的答案,但这些都不适合我。 我对iPhone以及iOS应用程序非常新。 请帮我得到我的答案
我正在尝试的代码: –
- (void)viewDidLoad { [super viewDidLoad]; const NSInteger searchBarHeight = 45; UISearchBar *searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, self.tableView.frame.size.width, searchBarHeight)]; searchBar.delegate = self; self.tableView.tableHeaderView = searchBar; [searchBar release]; UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithTitle:@"Refresh" style:UIBarButtonItemStyleBordered target:self action:@selector(onAddContact:)]; self.navigationItem.rightBarButtonItem = addButton; UILabel *label = [[[UILabel alloc] initWithFrame:CGRectZero] autorelease]; label.backgroundColor = [UIColor clearColor]; label.font = [UIFont boldSystemFontOfSize:20.0]; label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5]; label.textAlignment = UITextAlignmentCenter; label.textColor = [UIColor whiteColor]; // change this color self.navigationItem.titleView = label; label.text = NSLocalizedString(@"All Contacts", @""); [label sizeToFit]; content = [DataGenerator wordsFromLetters]; indices = [[content valueForKey:@"headerTitle"] retain]; }
您需要将表格视图分开search栏。只需将searchBar添加到视图中,而不是将其添加到表格中。 代码如下:
[self.view addSubview:searchBar];
然后添加表格视图。
对于UISearchDisplayController示例,请遵循以下教程: http ://cocoabob.net/?p=67或http://blog.mugunthkumar.com/coding/iphone-tutorial-uisearchdisplaycontroller-with-nspredicate/
源代码也可用。 如果你不明白,请告诉我。 我有一个项目,所有这些已经实施。
在这里当你滚动UITableView
的时候也滚动UISearchBar
,因为你添加UISearchBar
作为UITableView
的headerview看到这一行..
self.tableView.tableHeaderView = searchBar;
所以它的滚动与UITableView
,在这里修复UISearchBar
只是作为self.view
的子视图与框架,但从UITableView
例如..
[yourSearchBar setFrame:CGRectMake(0, 0, 320, 44)]; [self.view addSubview:yourSearchBar];
欲了解更多信息,请参阅下面的链接与UITableView
与UISearchBar
教程和演示
- 过滤-A-的UITableView上带有一个-的UISearchBar-使用核心数据
- UITableView中的search表视图
- 如何使用searchbar textfield change事件过滤数组本文使用 – (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText方法
我希望这可以帮助你…