텍스트보기를 왼쪽으로 슬라이드하고 오른쪽에서 다시 슬라이드하는 애니메이션을 만들려고합니다. 본질적으로 이것은 스톱워치 & 타이머 응용 프로그램 (sportstracklive는 개발자)에서 사용되는 텍스트 효과와 같습니다.Android 애니메이션 startOffset을 사용하면 대상보기가 깜박이고 애니메이션이 적용되지 않습니다.
이 애니메이션 세트 중 하나를 다른 애니메이션 세트와 함께 사용할 수 있으며 제대로 작동하며 원하는대로 정확하게 작업 할 수 있습니다. 그러나 함께 사용하려고하면 TextView가 약 1 초 정도 동안 깜박입니다. startOffset을 제거하면 예상대로 작동합니다. 두 애니메이션 세트가 동시에 실행됩니다.
다음은 XML이다 :
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0%"
android:toXDelta="-25%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="@android:integer/config_shortAnimTime"
/>
<alpha
android:interpolator="@android:anim/decelerate_interpolator"
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="@android:integer/config_shortAnimTime"
/>
<set>
<translate
android:fromXDelta="25%"
android:toXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:startOffset="@android:integer/config_shortAnimTime"
android:duration="@android:integer/config_shortAnimTime"
/>
<alpha
android:interpolator="@android:anim/decelerate_interpolator"
android:fromAlpha="0.0"
android:toAlpha="1.0"
android:startOffset="@android:integer/config_shortAnimTime"
android:duration="@android:integer/config_shortAnimTime"
/>
</set>
</set>
그리고 여기를 실행하는 긴 자바 코드는 다음과 같습니다
AnimationSet mSlideRightToLeft =
(AnimationSet) AnimationUtils.loadAnimation(this, R.anim.slide_right_to_left);
mMyTextView.startAnimation(mSlideRightToLeft);
궁금한 점 : 태그 안에 애니메이션의 두 번째 부분이있는 이유는 무엇입니까? 나는 당신이 달성하려고하는 것과 비슷한 애니메이션을 만들었지 만 다른 애니메이션 안에 또 다른 태그 –
justinl