"MultiAutoCompleteTextView"에서 확장 한 사용자 정의보기가 있습니다. 사용자가 CustomTextView에서 타이핑을 시작하면 팝업에 제안 된 값이 표시됩니다. 이 값 중 하나를 선택하면 CustomTextView가 선택된 값으로 채워집니다.MultiAutoCompleteTextView에 대해 선택된 값을 사용할 때 사용되는 텍스트를 설정하는 방법
선택할 수있는 값에는 ID와 이름이 있습니다. 기본적으로 사용자가 목록에서 값을 선택하고 CustomTextView가 선택한 값으로 채워지면 TalkBack은 선택한 항목의 ID를 이상한 방식으로 읽습니다.
그것은 ID가 사과했다 경우는
을 읽고 예를 들어
"(개별 charachers 등 해당 itemId) 쉼표 공간 SYN 대체합니다 (전체 단어로 상품 ID)"
를 읽고
"사과 사과 사과 쉼표 공간을 대체합니다"
ID가 아닌 이름을 읽고 싶습니다.
내게 필요한 옵션에 대한 사용자 지정보기를 추가하기위한 접근성 문서 읽기 (http://developer.android.com/guide/topics/ui/accessibility/apps.html#custom-views) 다른 API를 덮어 쓰려고 시도했지만 이벤트 텍스트를 설정하려고했지만 이벤트 텍스트에 아무 것도하지 않으면 아무 것도 읽지 않습니다. 내 CustomTextView에 내가 이벤트 텍스트가에서에 "테스트"를 업데이트지고 나의 디버깅 시스템 아웃에서 볼 수있는 코드
public void onPopulateAccessibilityEvent(AccessibilityEvent event){
super.onPopulateAccessibilityEvent(event);
System.out.println("onPopulateAccessibilityEvent \n s = " + s
+ "\n event text = " + event.getText());
CharSequence c = "Test";
event.getText().clear();
event.getText().add(c);
System.out.println("event text after setting = " + event.getText());
}
을 추가 한 있도록
난 단지 API를 위 (15) 등을 지원해야 id
onPopulateAccessibilityEvent
s = Jo Blogs
event text = [UID1234, ]
event text after setting = [Test]
따라서 "Test"문자열이 소리내어 읽히지 않는 이유는 무엇입니까? 어떤 아이디어?
참고 : 다음 코드를 추가하면 CustomTextView를 터치하면 "Touched on CustomTextView"를 올바르게 읽습니다. 그러나이 메소드를 덮어 쓰면 제안에서 항목을 처음 선택하고 CustomTextView를 채울 때와 아무런 차이가 없습니다.
@Override
public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info){
super.onInitializeAccessibilityNodeInfo(info);
info.setText("Touched on CustomTextView");
}