通过通知来实现TextField文本更改追踪。

同样也可以监听其他空间的其他属性变化情况!
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(textFieldChanged:)  name:UITextFieldTextDidChangeNotification
                                               object:self.searchBar.searchTextField];
-(void)textFieldChanged:(NSNotification *)notification
{
    NSLog(@"%lu",(unsigned long)[self.dataList count]);
    NSString *searchText= self.searchBar.searchTextField.text;
    if (searchText!=nil && searchText.length>0) {
        self.showData= [NSMutableArray array];
        for (NSString *tempStr in self.dataList) {
            if ([tempStr rangeOfString:searchText options:NSCaseInsensitiveSearch].length >0 ) {
                [_showData addObject:tempStr];
                NSLog(@"%lu",(unsigned long)[self.showData count]);
            }
        }
        [self.tableView reloadData];
    }
    else
    {
        self.showData = [NSMutableArray arrayWithArray:self.dataList];
        [self.tableView reloadData];
    }
}

评论

此博客中的热门博文

使__attribute__((annotate("xxx")))能作用于OC函数

viewWillAppear不执行的解决办法

iOS中使用xpc/xpc.h