[英]How to set content description of a switch or toggle button in Android Studio?
我想讓我的應用程序可以通過對講訪問,但我不知道如何為開關或切換按鈕的兩種狀態設置不同的內容描述。
你有什么建議嗎?
您可以像這樣以編程方式設置內容描述。
toggleButton.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick( View v ) {
if( toggleButton.isChecked() ) {
toggleButton.setContentDescription( "Selected" );
} else {
toggleButton.setContentDescription( "Unselected" );
}
}
} );
使用AccessibilityNodeInfo
的setChecked
和setCheckable
。 https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCheckable(boolean)
class MyAccessibilityDelegate extends View.AccessibilityDelegate {
MyButton button;
public constructor (MyButton button) {
this.button = button;
}
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
super.onInitializeAccessibilityNodeInfo(host, info);
info.setCheckable(true);
info.setChecked(button.getChecked());
然后將委托添加到您的視圖/布局/等。
class MyButton extends View {
...
public constructor() {
setAccessibilityDelegate(new MyAccessibilityDelegate(this);
}
...
}
說明:所有無障礙服務都應該使用AccessibilityNodeInfo
來確定大聲說出的內容。 setCheckable
使服務知道View
具有可修改的狀態,而setChecked
實際上更改了“已檢查/未檢查”標注。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.