UISearchBar委托函数仅对iOS7 iPhone5没有响应。我的代码中有两个.xib文件,一个用于3.5英寸屏幕,一个用于4英寸屏幕。 对于3.5英寸的屏幕,它工作正常,但对于4英寸的屏幕,代理功能没有被调用。 你能指导我吗?
- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar {
[searchBar setShowsCancelButton:YES animated:YES];
[self keyboardWillShow];
}
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar {
[self keyboardWillHide];
searchBar.text=@"";
[searchBar setShowsCancelButton:NO animated:YES];
[searchBar resignFirstResponder];
}
- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar
调用此函数但searchBarCancelButtonClicked
不起作用。
答案 0 :(得分:4)
我有一些建议:
1)首先检查一下iPhone5的.xib文件是否与UISearchBar的代表连接?
2)你可以为3.5英寸和4英寸使用一个.xib文件,并通过自动调整使这个.xib兼容iPhone 4和5。
希望这一点可以解决您的问题。
答案 1 :(得分:0)
就像Irfan所说,这是因为你没有正确地连接代表。检查你的xib文件是否有4英寸的屏幕。你也可以在一个xib中完成这个。只需单击自动布局并适当调整每个元素的调整大小约束,以获得更好的结果。
答案 2 :(得分:0)
一切都很好。这是我的错。我正在应用覆盖取消按钮的叠加视图。我删除了那个叠加层,它工作正常。