アクションシートの上をタップするとアクションシートを離してしまうようなアクションシートにアクションを設定したい。
アクションシートにキャンセルボタンを追加したくないので、これをしたいです。キャンセルボタンの代わりに、休憩エリアビューをタップしてアクションシートをキャンセルすることができます。
iPhoneでこれを行う方法を教えてください。
おかげユーザーがiPhone上で上のビューをタップしたときにUIActionSheetを非表示にする
2
A
答えて
8
// For detecting taps outside of the alert view
-(void)tapOut:(UIGestureRecognizer *)gestureRecognizer
{
CGPoint p = [gestureRecognizer locationInView:self];
if (p.y < 0)
{ // They tapped outside
[self dismissWithClickedButtonIndex:0 animated:YES];
}
}
-(void) showFromTabBar:(UITabBar *)view
{
[super showFromTabBar:view];
// Capture taps outside the bounds of this alert view
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapOut:)];
tap.cancelsTouchesInView = NO; // So that legit taps on the table bubble up to the tableview
[self.superview addGestureRecognizer:tap];
[tap release];
}
はhereを参照してください。
これは既にiPadで発生しています。
+0
[self.window addGestureRecognizer:tap];ナビゲーションバーまたはステータスバーのタップが消えることを意味するので、はるかに信頼性が高くなります。 – malhal
1
- 実装に応じて、(UITapGestureRecognizerを介して)親ビューまたは(
touchesBegan:
メソッドをオーバーライドを介して)親ビューコントローラ上の捕獲タップボタン。 [UITouch locationInView:]
または[UITapGestureRecognizer locationInView:]
メソッドを使用して、必要に応じてタップの位置をキャプチャします。- (タップした場所があなたのアクションシートからあまり離れていない場合)は、
[UIAction dismissWithClickedButtonIndex:animated:]
を呼び出してアクションシートを却下してください。
関連する問題
- 1. ユーザーがビューの外にタップしたときにビューを閉じる
- 2. Plone4上のユーザーがポートレット列をオン/オフで表示/非表示にできるようにする
- 3. iPhoneのビューの上にポップアップを表示する方法
- 4. ユーザーが検索バーをタップしたときにテーブルビューを表示する方法
- 5. iPad上のUIActionSheetは、親ビューがUIPopoverのときに下から表示されます
- 6. ビューがモノトックでタップされているときにタブバーとナビゲーションバーを非表示にする
- 7. AndroidでMapViewをタップするとアクションバーが非表示になる
- 8. ユーザーがキャンセルしたときにCDialogImplダイアログを非表示
- 9. ユーザーがログインしたときにiphoneバッジカウントを表示
- 10. iPhone/iPad /モバイルサファリの外でユーザーがクリックしたときにDIVを非表示にする
- 11. ビューを表示するUIActionSheetボタン
- 12. ボタンをタップしたときにUIPickerViewが表示される
- 13. Android TextViewをビューの上に表示
- 14. ユーザーがログインしたときの登録フォームとログインフォームを非表示にする
- 15. iPhone上で下から上にスライドエフェクトを開いたビュー
- 16. ユーザーがJQueryを使用してリンク上を移動したときに画像を表示するには
- 17. iPhone OS:バーが一番上までスクロールするにはタップ状態は、ステータスバー非表示にするには、このメソッドを使用してバック
- 18. ステータスバーをタップすると上にスクロール
- 19. ビューをプッシュするときにタブバーを非表示にする
- 20. 別のビューが表示されているときに、リージョンマネージャでビューを非表示にする
- 21. 「AlertDialogを表示」の上に「OK」をクリックしたときのDialogPreference
- 22. iPhoneの暗い部分をタップしてUIActionSheetを閉じる
- 23. iPad UIActionSheetを外側にタップすると、UIActionSheetの状態になりますか?
- 24. 私は自分のウェブページ上に表示したいファイルをウェブホスト上に置くことができますか?
- 25. SKSceneの上にビューを表示するには?
- 26. Drupalフォーム上のファイルアップロードボタンを非表示にして何かを表示します。
- 27. タップしたときにnavbarが表示されない
- 28. iPhone設定では、アクションの後にUIActionSheetを表示できますか?
- 29. 2つのモデルを持つリレーション上のビューにユーザー名を表示
- 30. ユーザーがIPhoneの画像をタップしたときに画像を他の画像に置き換えます。
なぜ標準インターフェイスのパラダイムから逸脱していますか? UIActionSheetのプレゼンテーション形式とUIを再設計することなくこれを行うと、ユーザーに混乱が生じる可能性があります。 –