kev*_*.ng 6 iphone objective-c uikit uisearchbar ios
我以编程方式创建了一个搜索栏,并使用以下代码添加到我的视图中:
- (void)viewDidLoad
{
searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(xPositionForSearchBar, yPositionForSearchBar, widthForSearchBar, heightForSearchBar)];
UIView *bg = [[searchBar subviews] objectAtIndex:0];
searchBar.delegate = self;
searchBar.placeholder = @"Search record";
for(UIView *view in searchBar.subviews){
if([view isKindOfClass:[UITextField class]]){
UITextField *tf = (UITextField *)view;
tf.delegate = self;
break;
}
}
[bg removeFromSuperview];
[self.view addSubview: searchBar];
}
Run Code Online (Sandbox Code Playgroud)
该代码使用UISearchBarDelegate和UITextFieldDelegate实现.
我试过用
- (void)searchBarCancelButtonClicked:(UISearchBar *)aSearchBar
{
NSLog(@"cancel clicked");
searchBar.text = @"";
[aSearchBar resignFirstResponder];
}
- (BOOL)textFieldShouldClear:(UITextField *)textField
{
NSLog(@"clear");
[self performSelector:@selector(searchBarCancelButtonClicked:) withObject:searchBar afterDelay: 0.1];
return YES;
}
Run Code Online (Sandbox Code Playgroud)
然而,当我点击"清除按钮" - 里面有一个"X"的圆圈时,searchBar里面的文字根本就没有被清除.
当我在IB中实现它时,清除按钮有效.想知道为什么?
请多多建议,非常感谢.
| 归档时间: |
|
| 查看次数: |
1401 次 |
| 最近记录: |