Me gustaría añadir un ejemplo completo de la animación de un icono de progreso en ImageView, que se basa en respuesta Marcar Hetherington.
Así que mi animación se ve de la siguiente manera:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="-360"
android:duration="100"
android:drawable="@drawable/ic_loop_black_24dp"
/>
icono proviene de https://material.io/icons/
entonces mi diseño contiene una ImageView de la siguiente manera:
<ImageView
android:id="@+id/progress"
android:layout_marginTop="0dp"
android:layout_marginLeft="-3dp"
android:layout_width="30dp"
android:layout_height="30dp"
android:visibility="gone"
android:scaleType="fitCenter"
android:background="@drawable/progress_anim"
android:layout_gravity="center_horizontal|center_vertical"
/>
y finalmente en el código cuando necesito mostrar animación que hago:
RotateDrawable rotateDrawable = ((RotateDrawable)progressImage.getBackground());
ObjectAnimator anim = ObjectAnimator.ofInt(rotateDrawable, "level", 0, 10000);
anim.setDuration(1000);
anim.setRepeatCount(ValueAnimator.INFINITE);
anim.start();
no entiendo la pregunta. ¿Quieres tener una animación, o simplemente rotar la imagen dentro? para la rotación, echa un vistazo a esta publicación: http://stackoverflow.com/a/21376008/878126 –