import android.animation.ArgbEvaluator; import android.animation.ObjectAnimator; import android.animation.ValueAnimator; import android.graphics.Color; import android.os.Bundle; import android.view.View; import android.view.animation.LinearInterpolator; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView textView = findViewById(R.id.movingText); // Vytvoříme animátor // "translationX" říká, že měníme X souřadnici (posun) ObjectAnimator animator = ObjectAnimator.ofFloat(textView, "translationX", 0f, 500f); animator.setDuration(2000); animator.setRepeatCount(ValueAnimator.INFINITE); // Nekonečno animator.setRepeatMode(ValueAnimator.REVERSE); // Tam a zpět animator.setInterpolator(new LinearInterpolator()); // Lineární (stejná rychlost) // Spuštění animator.start(); // Vytvoříme animátor pro vlastnost "textColor" ObjectAnimator colorAnim = ObjectAnimator.ofInt(textView, "textColor", Color.RED, Color.GREEN); colorAnim.setEvaluator(new ArgbEvaluator()); // Nastavení jako u pohybu colorAnim.setDuration(1000); // 1 sekunda na změnu colorAnim.setRepeatCount(ValueAnimator.INFINITE); colorAnim.setRepeatMode(ValueAnimator.REVERSE); // Tam a zpět (blikání) // Spuštění colorAnim.start(); } }