Iphone 辞职UISearchBar时出现问题';第一响应者状态

Iphone 辞职UISearchBar时出现问题';第一响应者状态,iphone,uitableview,uisearchbar,exc-bad-access,first-responder,Iphone,Uitableview,Uisearchbar,Exc Bad Access,First Responder,我的UITableView上有一个UISearchBar,还有一个方法-finishsearch,如下所示: - (void)finishSearching { [overlayViewController.view removeFromSuperview]; if ([sb isFirstResponder]) [sb resignFirstResponder]; myTableView.scrollEnabled = YES; } 每次我要停止搜索时

我的
UITableView
上有一个
UISearchBar
,还有一个方法
-finishsearch
,如下所示:

- (void)finishSearching {
    [overlayViewController.view removeFromSuperview];
    if ([sb isFirstResponder])
        [sb resignFirstResponder];
    myTableView.scrollEnabled = YES;
}
每次我要停止搜索时,都会调用此方法。无论是使用“取消”或“搜索”按钮,还是只需点击
UITableView
。问题是,当涉及到
[sb辞职firstresponder]时,我总是得到
EXC\u BAD\u访问权限
UITableView

有什么建议吗

最佳

–f

您确定通过
removeFromSuperview
不会过早释放
sb
?尝试先辞职,然后从superview中删除视图。

Uhm,我不会从superview中删除
sb
。这是
overlayViewController
的视图属性。我知道。但是我想知道谁在保留
sb
。如果您确定您的对象保留了它,请寻找另一个解决方案。好的,我发现了错误。在退出first responder时,我产生了一个无限循环,因为我在方法中调用了我的
-finishSearching
方法,该方法在
搜索栏
想要退出
firstResponder
状态时被调用。无论如何谢谢你!尝试更改顺序(特别是,如果sb是overlayViewController.view的子视图,则在将其从视图层次结构中删除后,您将辞职first responder,至少在以前的版本中这是一件坏事)。