ユーザーがUIViewの背景の一部をクリックしたときに通知を受けたいと思います。基本的に、ユーザーがUIView(テーブル、テキストフィールド、ボタンなど)にあるコントロールの外側をクリックした場合。UITapGestureRecognizerメインビュー(入力またはボタンではない)のタップを認識します
どうすればよいですか?私はこれをやろうとしました:
しかし明らかに、すべてのコントロールはUIViewを拡張しています...そう、私はちょっと立ち往生しています。
ユーザーがUIViewの背景の一部をクリックしたときに通知を受けたいと思います。基本的に、ユーザーがUIView(テーブル、テキストフィールド、ボタンなど)にあるコントロールの外側をクリックした場合。UITapGestureRecognizerメインビュー(入力またはボタンではない)のタップを認識します
どうすればよいですか?私はこれをやろうとしました:
しかし明らかに、すべてのコントロールはUIViewを拡張しています...そう、私はちょっと立ち往生しています。
これを行う方法の1つは、VCのメインビューの子である個別の背景ビューを追加することです。あなたは単にそれを透明にして、あなたのスタイリングを妨げないようにすることができます。場所は他のすべての子供の意見を背後にある。次に、GRをそのビューに登録します。あなたは次のことを行うことができるはず
:提案のための
backgroundView.userInteractionEnabled = YES;
UITapGestureRecognizer *tap = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapHit:)] autorelease];
[backgroundView addGestureRecognizer:tap];
-(void) tapHit:(UITapGestureRecognizer *tap) {
NSLog(@"background tapped");
}
I'veがtabeViewではなく、それはのtableViewインタラクションカバーと思われることをしようとした試みをあげますbackgroundViewインタラクションそのための解決法はありますか? – rockstarberlin
おかげで...私はそれを –