キーボードの上部にある画像ボタン付きのshowhideiphoneキーボードを使用します。
[kbdImage setFrame:CGRectMake(290, 0, 30, 30)];
[accessoryView setFrame:CGRectMake(290, 0, 320, 30)];
UITapGestureRecognizer *gestureRecogniser = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyBoard:)];
gestureRecogniser.numberOfTapsRequired = 1;
[accessoryView addSubview:kbdImage];
[accessoryView addGestureRecognizer:gestureRecogniser];
for (UIView* v in searchBar.subviews) {
if ([v isKindOfClass:[UITextField class]]) {
((UITextField*)v).inputAccessoryView = accessoryView ;
}
}
これは、キーボードを非表示にする場合に機能します。ただし、入力ビューの残りの領域もタッチ可能です。これを回避する方法。