UITableViewの背景でタップを検出する最もクリーンな方法は何ですか?私はキーボードを却下するためにこれらをキャッチしたいと思います。UITableViewの背景でのタップの検出
残念ながら、UITapGestureRecognizerをtableviewに追加すると、セルをタップするとハンドラが起動します。あなたのUI(表)のViewControllerにおいてたりのUITableViewに
UITableViewの背景でタップを検出する最もクリーンな方法は何ですか?私はキーボードを却下するためにこれらをキャッチしたいと思います。UITableViewの背景でのタップの検出
残念ながら、UITapGestureRecognizerをtableviewに追加すると、セルをタップするとハンドラが起動します。あなたのUI(表)のViewControllerにおいてたりのUITableViewに
、
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
を無効にし、キーボードが表示されている場合、それを閉じ。また、このイベントをサブビューに転送することを忘れないでください。
テーブルビューの背景ビューでジェスチャを追加します。このように:
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(tableViewBackgroundTap)];
[self.tableView.backgroundView addGestureRecognizer:tapGesture];
それは私のためには機能しません –
'backgroundView'を最初に作成し&設定しなければ動作しません。 –
これはまた、セルのタップをキャッチしませんか?私はそれを望んでいない。 –
タッチがUITableViewCellの境界にある場合、イベントをサブビューに転送せずに単にキーボードを閉じないでください:) – 0xSina
まあ、私はすべてのセルのrectsをつかんでタッチを探すことができたと思います。少し高いレベルで何かを望んでいる。 –