У меня есть TextView в FrameLayout следующим образом:
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
... >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
... />
Текст TextView задается в коде, и у меня есть анимация перевода, работающая в TextView, которая перемещает его влево по родительскому представлению следующим образом:
myTextView.setText(getVenueInformationText());
myTextView.setAnimation(AnimationUtils.loadAnimation(myContext, R.anim.slide_left_repeatedly));
Мне нужно учитывать оба случая, когда текст в TextView короче или шире, чем ширина родительского представления (в данном случае — FrameLayout). Однако я обнаружил, что ширина анимированного TextView всегда равна ширине FrameLayout (и, таким образом, мой текст обрезается).
Кто-нибудь знает, почему, когда я устанавливаю текст в своем TextView и устанавливаю анимацию, TextView появляется только тогда, когда ширина FrameLayout (даже если текст в TextView должен растягиваться, чтобы быть шире, чем FrameLayout)?
Примечание 1. Анимация выделения в TextView не подойдет для меня, поскольку текст в TextView может быть меньше ширины родительского представления (в этом случае анимация не запускается... и мне нужно, чтобы анимация запускалась независимо от ширины текста).
Примечание 2. Ниже приведено XML-определение анимации перевода, которую я использую:
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fromXDelta="100%p"
android:toXDelta="-100%"
android:repeatCount="infinite"
android:duration="15000" />
LinearLayoutвместоFrameLayout? - person Adil Soomro   schedule 30.01.2012