2015-12-31 3 views
0

У меня есть кнопка обновления, которую я хочу повернуть, пока не будет выбрано геолокация. Проблема в том, что он вращает только один цикл и останавливается.ImageView поворачивается только один раз (Android)

refresh_button_rotate.xml:

<?xml version="1.0" encoding="utf-8"?> 
    <set> 
     <rotate xmlns:android="http://schemas.android.com/apk/res/android" 
      android:duration="1000" 
      android:fromDegrees="0" 
      android:interpolator="@android:anim/linear_interpolator" 
      android:pivotX="50%" 
      android:pivotY="50%" 
      android:toDegrees="360" /> 
    </set> 

MainFragment:

refreshGeo.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     Animation rotation = AnimationUtils.loadAnimation(mContext, R.anim.refresh_button_rotate); 
     rotation.setRepeatCount(Animation.INFINITE); 
     rotation.setRepeatMode(Animation.RESTART); 
     refreshGeo.startAnimation(rotation); 

Я также попытался другой метод:

RotateAnimation anim = new RotateAnimation(0f, 350f, 15f, 15f); 
    anim.setInterpolator(new LinearInterpolator()); 
    anim.setRepeatCount(Animation.INFINITE); 
    anim.setDuration(700); 
    final ImageView splash = refreshGeo; 
    splash.startAnimation(anim); 

Это провернуть без остановки изображения, но он поворачивает его из верхнего левого угла зрения ..

ответ

1

Подписи RotateAnimation конструкторы вы использовали RotateAnimation (поплавок fromDegrees, плавать toDegrees, плавать pivotX, плавать pivotY)

если нужно исправить pivotX, pivotY согласно вашему требованию. т. е. если вы хотите повернуть от центра, чем использовать (ширина/2, высота/2) для (pivotX, pivotY).

+1

в случае первого изменения метода андроида: repeatCount = "- 1" в файле анимации xml. – nkit

Смежные вопросы