host
その後、TalkBackにビュー内のテキストの内容と「クール」を伝えようとしています。
これを行うために、線形レイアウトでアクセシビリティ デリゲートを設定していますが、info
パラメーターの text プロパティと contentDescription プロパティは常に null です。つまりinfo.getText()
、info.getContentDescription()
常に null を返します。ネストされた TextViews からテキストを抽出できないようです。
したがってhost
、パラメーターは線形レイアウトであり、その中に別のネストされた線形レイアウトが含まれます。このネストされたリニア レイアウトには、さらにネストされたレイアウトとテキスト ビューが子として含まれます。(私はAPI 21+をターゲットにしています)
linearLayout.setAccessibilityDelegate(new View.AccessibilityDelegate()
{
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info)
{
super.onInitializeAccessibilityNodeInfo(host, info);
String newWordsToSay = info.getText() + " is cool"
//info.getText() CRASHES due to null pointer exception
info.setContentDescription(info.setText(newWordsToSay));
}
});
編集:host
パラメータをチェックすると、予想されるネストされた TextView がすべてそこにあり、それぞれのテキスト フィールドがあります。問題は、それらからテキストを抽出できないように見えることです。
どんな助けでも大歓迎です。