searchBarTextDidBeginEditing在后退按钮单击时再次调用委托方法

Kru*_*nal 1 objective-c uitableview uisearchbar ios

我正在开发iPhone应用程序,其中我一度陷入困境.

我有一个viewController隐藏了导航栏,搜索栏位于页面的中心.

当用户点击searchBar searchBarTextDidBeginEditing方法被触发时.

在此之后,在searchBar textDidChange方法的文本更改中,我在tableview中加载实时数据,并在点击tableview时导航到其他页面,导航栏未隐藏.

现在,当我再次按回按钮时,我来到搜索页面这里searchBarTextDidBeginEditing方法再次被解雇.

为什么在背压下再次调用此方法?

请提前帮助和感谢.

Sha*_*hal 5

SearcBarTextDidBeginEditing由于您的搜索显示控制器仍处于活动模式,您的被叫

在TableView委托方法中,

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

    [self.view endEditing:YES];
    [self.searchDisplayController.searchBar resignFirstResponder];


   // Set Navigation
}
Run Code Online (Sandbox Code Playgroud)

在同一类中,视图将出现SET,

-(void)viewWillAppear:(BOOL)animated{

    self.searchDisplayController.Active = NO;

}
Run Code Online (Sandbox Code Playgroud)

希望对你有帮助!