다른 곳에서이 질문을했지만 솔루션이 제대로 작동하지 않았습니다. 그래서 더 많은 맥락으로 그것을 다시 포즈. 문제는 활동에 경과 시간 카운터 업데이트 텍스트보기가 표시되어 스크롤되는 음악 제목 텍스트보기가 포함되어 있다는 것입니다.TextView를 설정하면 다른 TextView의 선택 윤곽 스크롤이 중지됨
내 활동 레이아웃에는이 두 TextView 위젯이 있습니다 (다른 레이아웃 컨테이너에 포함되어 있음에도 불구하고).
<TextView android:id="@+id/v_current_time"
android:minWidth="26dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="right|center_vertical"
android:singleLine="true"
android:textSize="12sp"
android:enabled="false"
/>
<TextView android:id="@+id/v_track_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="normal"
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:enabled="true"
/>
음악 제목은 (테스트 사례에서) 긴 텍스트 줄로 동적으로 설정됩니다. 현재 시간의 텍스트를 다음 줄로 업데이트하지 않으면 일시 중지 및 재생 단추와 어떻게 상호 작용 하든지 관계없이 음악 제목이 계속 행복하게 스크롤됩니다.
tvCurrentTime.setText(DataFormat.formatTime(progress));
그러나 현재 시간의 텍스트를 설정하면 음악 제목이 중지됩니다. 일시 정지 버튼을 누르면 스크롤이 기어로 다시 들어 오지만 재생을 누르면 현재 시간이 업데이트되고 다시 멈 춥니 다.
tvCurrentTime.setText(DataFormat.formatTime(progress));
tvTitle.setEnabled(true);
이 재설정하는 것 이외의 실패에 영향을주지 않습니다 다음과 같이이 글의 제안 당
, 나는 커플로 스크롤 제목의 재 활성화와 시간 텍스트의 설정을 시도 scroller가 다시 시작할 때마다.
누락 된 부분이나 잘못 될 수있는 다른 생각이 있습니까? 고마워요!
위의 TextView XML 설정이 런타임 변경없이 작동합니다 (enabled = true 또는 무엇이든지 재설정 할 수 있음). 레이아웃 파일에서 RelativeLayout을 제거하고 LinearLayout으로 대체하는 경우에 그렇습니다. 그리고 위의 제안 1 또는 2 (3 정도는 확실하지 않음)가 작동하지 않으면 작동하지 않습니다. 그것은 RelativeLayout의 미묘하고 가짜 인 문서화되지 않은 실패입니다. 상대 레이아웃을 사용하지 않도록 레이아웃 파일을 재배치하는 것 이외에 다른 해결 방법이 있습니까?심지어 선형 레이아웃만으로 레이아웃 문제를 극복하기 위해 상대 레이아웃을 사용할 필요가 있다는 것을 상기 할 때도 가능하지 않습니다. – Groovee60
이 주셔서 감사합니다. 'RelativeLayout'이 원인입니다. 'LinearLayout'을 사용하는 경우에는 선택 윤곽이 잘 작동하고 다른 뷰를 업데이트해도 문제가 발생하지 않습니다. 이 정보는 자신의 대답을 받아야합니다 ... – Knickedi