2017-07-25 8 views
0

多くの状況でandroid:importantForAccessibility="yes"android:focusable="true"に置き換えられ、TalkBackとまったく同じように動作することに気付きました。フォーカスを使用する代わりにandroid:importantForAccessibility="yes"を使用する必要がありますか?TalkBackを使用している場合、Androidのフォーカス可能とimportantForAccessibilityの違いは何ですか?

Androidはandroid:importantForAccessibilityとして定義されています。

は、このビューには、アクセシビリティのために重要であるかどうかを記述します。重要な場合、ビューはアクセシビリティ・イベントを発生させ、画面に照会するアクセシビリティ・サービスに報告されます。注:推奨されていませんが、アクセシビリティサービスはこの属性を無視して、ビューツリー内のすべてのビューに対して操作を行うことがあります。ビューがフォーカスを取ることができるかどうか

コントロール:としてhttps://developer.android.com/reference/android/view/View.html#attr_android:importantForAccessibility

android:focusable="true"。デフォルトでは、これは "auto"で、ユーザがフォーカスをビューに移動できるかどうかをフレームワークが判断できるようにします。この属性をtrueに設定すると、ビューはフォーカスを取得できます。 「偽」に設定すると、ビューにはフォーカスが当てられません。この値は、requestFocus()を直接呼び出す動作には影響しません。requestFocus()は、このビューに関係なく常にフォーカスを要求します。フォーカスナビゲーションがフォーカスを移動しようとする場所にのみ影響します。 https://developer.android.com/reference/android/view/View.html#attr_android:focusable

答えて

0

Focusableは「入力フォーカス」と「キーボードフォーカス」を指します。フォーカス可能なコントロールは、入力フォーカス(カーソル)またはキーボードフォーカスを受け取ることができるコントロールです。これは基本的にトラックボール/キーボードナビゲーションを使用して、「選択」アクションでそのコントロールを強調表示することができることを意味します。例:キーボードでenterを押す。

isImportantForAccessibilityはアクセシビリティフォーカスを指します。これは入力フォーカスに強く結びついていますが、非常に異なっています。例えば、「有益な」テキストのみのコンテンツを入力することは、感覚的ではない。しかし、段落にアクセシビリティのフォーカスを与えることは非常に重要です。これにより、TalkBackを使用しているユーザーは、有益なコントロールの音声フィードバックを集中して聞くことができます。

ユーザーがキーボードナビゲーションを使用している場合、入力フォーカスとアクセシビリティのフォーカスは同じですが、ユーザーがTalkBackスワイプナビゲーションを使用している場合は、入力フォーカスとアクセシビリティフォーカスが異なる場合があります。例えば

アクセシビリティ焦点は、それはそのコントロールが何のためにあるのかVoiceFeedbackを介してユーザに説明する以下のパラグラフにある間、カーソルが、のEditTextボックスである可能性があります。

関連する問題