アイコンを表す画面に小さなAndroid ImageButtonがあります。問題は触れることが難しく、活性化することです。画像自体のサイズを大きくしたくないのですが、クリック可能な領域を拡大して拡大したいので、ユーザーが画像の近くにいるとonClickイベントが有効になります。周囲の画面領域にonTouchイベントを実装せずにこれを行うにはどうすればいいですか?Android ImageButtonクリック可能な領域をイメージ自体よりも大きくするにはどうすればいいですか?
答えて
あなたのは、別のViewGroup
にあなたのラップを置き、ViewGroup
にパディングを設定することができます。その後、ViewGroup
のクリックをリスンします。
<FrameLayout
android:id="@+id/button_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="20dp" >
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_button"
android:duplicateParentState="true"
android:clickable="false"
android:focusable="false" />
</FrameLayout>
あなたはその後、R.id.button_layout
のクリックをリッスンだろう、とあなたImageButton
は親のレイアウトとして(押され、クリックされた、など)すべて同じ状態を受ける必要があります。次に例を示します。
私は、相対レイアウトを使用してアイコンを配置した後、通常の状態では完全に透明なドロアブルを使用し、その上に直接大きなボタンを配置し、半透明の色を追加しますプレス/フォーカス/等のために。
どのように半透明色を指定しますか? –
私はアイコンを描きました(普通の状態は色もアルファもない空白の四角形です)、drawable xmlを通してすべて参照され、ボタンdrawableをxmlに設定しました。私はボタンをイメージよりも大きくするためにこれをしただけでなく、電話アイコンに静的なシステムイメージを使用して、個々のデバイスごとに物事を均一に保つことができました –
ここをクリックしてください:http://developer.android.com /resources/tutorials/views/hello-formstuff.html –
レイアウトがどのように設定されているのかわかりませんが、実際のところ、相対レイアウトを使用することです。大きな透明な背景でアイコンを作成します。正しく配置するにはレイアウトを手間取る必要がありますが、透明領域もクリック可能になります。
- 1. モバイルデバイスのクリック可能な領域のサイズはどれくらいですか?
- 2. 全領域をクリック可能にするにはどうすればよいですか?
- 3. Android StudioでImageButtonをクリック可能にするにはどうすればいいですか?
- 4. DIVをクリックできない領域でクリック可能にする方法は?
- 5. Android - カスタムボタン付きのカスタムビューでは、ボタン領域ではなく画面全体をクリック可能にします。
- 6. WPFタブコントロールのタブ領域をコントロールよりも小さくするにはどうすればよいですか?
- 7. divの領域をクリック可能にするにはどうすればよいですか? div全体ではありません!
- 8. Android:ビューのクリック可能な領域を減らすには?
- 9. CSSでホバーの領域を大きくするにはどうすればいいですか
- 10. クリック可能な領域はイメージビュー内にありますか?
- 11. アンカー要素のクリック可能な領域を拡大する
- 12. ウェブページの大きなクリック可能な領域
- 13. ビュービューをクリック可能にするにはどうすればよいですか?
- 14. イメージ上のテキストリンクをクリック可能なリンクに転送するにはどうすればよいですか?
- 15. コントロール全体をアンドロイドでクリック可能にするにはどうすればよいですか?
- 16. WPF RichTextBoxの表示可能領域を見つけるにはどうすればよいですか?
- 17. Java。サイズ変更可能なテキスト領域と固定ボタン領域でJPanelを作成するにはどうすればよいですか?
- 18. 既存のd3領域をスタック領域に変換するにはどうすればよいですか?
- 19. Relativelayoutをクリック可能にするにはどうすればいいですか?
- 20. イメージからすべての領域を抽出するにはどうすればよいですか?
- 21. jscrollpane領域をスクロールするにはどうすればよいですか?
- 22. イメージのサイズをいくらか大きくするにはどうすればよいですか?
- 23. ImageButton内の画像のサイズを大きくするにはどうすればよいですか?
- 24. Chromeがテキスト領域をオートコンプリートしないようにするにはどうすればよいですか?
- 25. リストをクリック可能にするにはどうすればよいですか?
- 26. テーブルが水平よりも垂直に大きい領域
- 27. Android Studio XML ImageViewに必要なクリック可能な領域
- 28. イメージの指定領域をImagickで透明にするにはどうすればいいですか?
- 29. Androidのアクションバーにクリック可能なテキストビューを追加するにはどうすればよいですか?
- 30. cssでテーブルの行全体をクリック可能にするにはどうすればよいですか?
20-50ディップの左にパディングを追加しようとしましたが、これはうまくいかないようです。 –
paddingRight、paddingLeftなどではなく、単にpadding = "20dip"にするという考えですか? –
これはうまくいけば、おそらく最速のテクニックですが、まだ検証できませんでした。 –