gpt4 book ai didi

ios - UISearchBar 委托(delegate)不起作用

转载 作者:行者123 更新时间:2023-12-01 18:14:04 25 4
gpt4 key购买 nike

我的 View 中有一个 UISearchBar,我尝试使用此代码来捕获用户正在输入的文本以及单击按钮取消时:

@interface ClienteViewController : UIViewController <UISearchBarDelegate, UISearchDisplayDelegate>{

IBOutlet UISearchBar *search;//is connected
}

- (void)viewDidLoad{

[super viewDidLoad];

search.delegate = self;

}

-(void)searchBarCancelButtonClicked:(UISearchBar *)searchBar{
NSLog(@"Cancel");
}


-(void)searchBarSearchButtonClicked:(UISearchBar *)searchBar{
NSLog(@"GO");
}

-(void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope {
NSLog(@"Search string is -> %@",searchText);
}

我的代码看起来很简单,我想做的就是找到一种方法来获取您正在输入用户的文本,知道何时单击取消按钮,并在控制台上显示结果,但它不起作用,会发生什么?

最佳答案

试试这个:

.h 文件

@property (weak, nonatomic) IBOutlet UISearchBar *search;
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText;

.m 文件
- (void)viewDidLoad
{
[super viewDidLoad];
_search.delegate = self;
}

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
NSLog(@"%@",searchText);
}
filterContentForSearchText不是 UISearchBarDelegate 或 UISearchBarDisplayDelegate 的方法,所以它永远不会被调用(除非你在其他地方调用它)。

关于ios - UISearchBar 委托(delegate)不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24542093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com