У меня есть 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" />