如何使用此代码在 tableview 中使用搜索栏?
Posted
技术标签:
【中文标题】如何使用此代码在 tableview 中使用搜索栏?【英文标题】:How to use search bar in tableview using this code? 【发布时间】:2014-01-09 11:01:54 【问题描述】:如何使用textfield
搜索cell.textLabel.text
值?我正在使用此代码。
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewCell *cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil] autorelease];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
UITextField* tf = nil ;
switch ( indexPath.row )
case 0:
cell.textLabel.text = @"Name" ;
tf = nameField_ = [self makeTextField:self.name placeholder:@"sathish"];
[cell addSubview:nameField_];
break ;
case 1:
cell.textLabel.text = @"Address" ;
tf = addressField_ = [self makeTextField:self.address placeholder:@"example@gmail.com"];
[cell addSubview:addressField_];
break ;
case 2:
cell.textLabel.text = @"Password" ;
tf = passwordField_ = [self makeTextField:self.password placeholder:@"Required"];
[cell addSubview:passwordField_];
break ;
case 3:
cell.textLabel.text = @"Description" ;
tf = descriptionField_ = [self makeTextField:self.description placeholder:@"My Gmail Account"];
[cell addSubview:descriptionField_];
break ;
tf.frame = CGRectMake(120, 12, 170, 30);
[tf addTarget:self action:@selector(textFieldFinished:) forControlEvents:UIControlEventEditingDidEndOnExit];
tf.delegate = self ;
return cell;
【问题讨论】:
您的意思是,当您在搜索栏中输入文本时。它应该在 tableview 中填充数据吧?? 如何在没有数组的情况下搜索 cell.textlabel.text 值.. 我的意思是,你想在搜索栏中传递这个 cell.textlabel.text 值吗?? 是的。必须传递值。然后才能搜索它.. 我的意思是 UISearchbar 在 UITableView 之外?不在 UITableView 内。是这样的吗?? 【参考方案1】:基本步骤:
-
在你的类中声明并初始化 UISearchBar
声明并初始化 UISearchDisplayController
将 searchBar 添加到您的 tableView 中
实现 UISearchDisplayController 委托方法
这个流行的链接你会得到更多的想法
Adding UISearchBar Programmatically to UITableView
【讨论】:
以上是关于如何使用此代码在 tableview 中使用搜索栏?的主要内容,如果未能解决你的问题,请参考以下文章
使用 firebase 连接到 Tableview 的搜索栏
如何在 tableview 搜索栏中获取对 navigationcontroller 的引用?
如何在更新 tableview 时使用搜索栏对我的 NSFetchedResults 数据进行排序,而不会在 fetchedRC.performFetch() 上崩溃?更新