だから私はアプリを作っていますが、UISearchBar と UITextFields からキーボードを閉じるのに問題があります。これが私のアプリの構造です:
NavigationController -> ViewC1 - (モーダル) -> ViewC2 -(モーダル) -> ViewC3
ViewC1 に検索ボックスがあり、キーボードの [検索] ボタンを押すとキーボードが閉じられ、これは正常に機能します。ただし、ViewC3 に移動した後に ViewC1 に戻ると、[検索] ボタンを押してもキーボードが閉じなくなります。検索バーのデリゲート メソッドでは、次のように設定しました。
- (void) searchBarSearchButtonClicked:(UISearchBar *)search
{
if ([search isFirstResponder]) {
[search resignFirstResponder];
} else {
[search becomeFirstResponder];
[search resignFirstResponder];
}
}
これで問題は解決せず、キーボードが消えない理由がわかりません。参考までに、元の ViewC1 に戻ると、ViewC3 は次のように閉じられます。
UIViewController *parent = self.presentingViewController;
[parent.presentingViewController dismissViewControllerAnimated:YES completion:nil];
どんな助けでも大歓迎です、ありがとう。