1. ホーム
  2. android

[解決済み] focusableとfocusableInTouchModeの違い?

2023-02-24 10:58:07

質問

実際の違いを知りたいのですが...。どんな時に使うのか、どんな風に使うのか、どんな場面で役に立つのか。

いくつか例を挙げて、詳しく説明してください。

どのように解決するのですか?

Android Developers Blogで説明されています。 http://android-developers.blogspot.co.at/2008/12/touch-mode.html

以下の引用を見れば、一目瞭然でしょう。

それ自体では、タッチモードは、最後のユーザー操作がタッチ スクリーンで実行されたかどうかを示すだけなので、非常に理解しやすいものです。たとえば、G1 携帯電話を使用している場合、トラックボールでウィジェットを選択すると、タッチ モードから外れます。

...

<ブロッククオート

タッチモードでは、フォーカスも選択もありません。リストやグリッドで選択されている項目 は、ユーザーがタッチ モードになるとすぐに非選択になります。 タッチモードになると同時に非選択になります。同様に、フォーカスされているウィジェットも、ユーザがタッチモードになると タッチモードになるとフォーカスが外れます。

...

<ブロッククオート

タッチモードではフォーカスが存在しないことはお分かりいただけたと思いますが、それが完全な真実ではないことを説明しなければなりません。タッチ モードでもフォーカスは存在しますが、非常に特殊な方法で、タッチ モードでフォーカス可能と呼んでいます。この特別なモードは、EditText やフィルタリングが有効な場合の ListView など、テキスト入力を受け取るウィジェットのために作成されました。

...

<ブロッククオート

タッチモードでのフォーカス可能は、コードまたは XML から自分で設定できるプロパティです。 コードまたは XML から設定できます。しかし、これは控えめに、非常に特殊な状況でのみ使用する必要があります。 Android の通常の動作との一貫性が失われるため、非常に特殊な状況でのみ使用する必要があります。 動作との一貫性が損なわれるためです。ゲームは、以下のようなアプリケーションの良い例です。 タッチモードでフォーカス可能なプロパティを有効に活用できるアプリケーションの好例です。MapViewは、Google Mapsのようにフルスクリーンで使用すると は、Google Mapsのようにフルスクリーンで使用される場合、タッチモードでfocusableを正しく使用できるもう1つの良い例です。 タッチモードでフォーカス可能を正しく使用できるもう一つの良い例です。