2016-11-14 5 views
1

Androidにボタン「次」が書かれています。 ボタンにアクセシビリティカーソルがフォーカスされている場合、「次のボタン」が読み込まれます。これは私が欲しくないものです。私はいつでも、カーソルが "次へ"ボタンに焦点を当てて、それは "次のボタンとして読んでください。ダブルタップ"を選択する必要があります。これは私が簡単に btn.contentDescription("Next button. Double tap to select")、 を設定することにより、行うことができますが、それは として読み出し、「次へ]ボタン。ボタンを選択しダブルタップ」を、さらにそれを意味し、非常に奇妙に思える最後のボタンを、読み出し「ボタン」テキストが2回読み込まれます。アクセシビリティがアンドロイドボタンを「ボタン」としてアナウンスするのを止める方法は?

最後のボタンを停止する方法はありますか?

+0

が見てだろう[ここをクリック](http://stackoverflow.com/questions/37843919/android-talkback-announces-class-type-at-end-of-content-description) – c0rtexx

+0

@ c0rtexx :: thnxは、これを試してみると、 – akash89

+1

TalkBackは一般的に、コンテンツの説明に続いて「ボタン」が表示された後、約2秒間ポーズした後に「ダブルタップしてアクティブにする」とお知らせします。それはあなたのケースでそれをしていないのですか? – BrendanMcK

答えて

2

あなたはATの責任であることをしようとしています。 ATは、オブジェクトがそのクラスタイプのためにボタンであることを知っている。 Clickableは有効なアクセシビリティアクションであるため、ATはクリック可能であることを認識しています。 - >コンテンツの説明/テキスト 「[次へ]ボタン、(一時停止)ダブルタップを選択する」

「次へ」:

のTalkBackは、この情報を共有します、ここ内訳です。これはあなたがコントロールする部分です。

"ボタン" - TalkBackで、オブジェクトの有効なアクションとタイプ(クラス)に基づいて計算されます。

"ダブルタップで選択" - >このアナウンスはClickableが有効なアクセシビリティアクションであることに基づいています。

コンテンツ記述を「次へ.....」に設定すると、「次の.......ボタン(一時停止)をダブルタップして選択」というアナウンスが表示されます。これを無効にする方法はありません。

あなたがアプリケーションにアクセスしづらいことを絶対に意図している場合は、独自のコントロールを作成したり、(onClickイベントを使用しない場合と同様に)独自のジェスチャ認識ツールを作成して、ジェスチャー。そして、あなた自身のコンテンツの記述、名前、役割、および指示をあなた自身で書いてください。

これは私の意見では非常にばかげたことでしょう!単にコンテンツの説明を「次へ」にしてTalkBackに、あなたの要素がボタンであり、それと対話する方法をユーザーに伝えるようにしてください。 「完璧な」言葉ではないかもしれませんが、この要件はあなたのビジョンから来ています。これは、TalkBackのユーザーがこの種の制御を発表したことに慣れている方法です。一貫性は時には物事を「まさに」持っているよりも重要です。

-1

android:hintを入力して(ラベルに追加する代わりに)情報の入力に関する情報を提供します。

あなたのラベルは、「次へ」(どちらか隠された標識のため、画面上のラベルやandroid:contentDescriptionlabelForを使用して)

次に、あなたのヒント(android:hintを使用)「を選択するダブルタップ」だろう

+0

"ヒント"属性はEditTextボックスのみです。また、それはヒント属性がAndroidでどのように動作するかではありません。ヒントは、ユーザーが編集ボックスに挿入する前に編集ボックスに置かれているテキストです。しかし、あなたは、iOSの動作のヒントを完全に記述しています! – ChrisCM

関連する問題