public void setProgressRotation(float rotation) {
   if (mProgressDrawable.isRunning()) {
     stop();
   }
   mProgressDrawable.showArrow(true);
   mProgressDrawable.showArrowOnFirstStart(true);
   mProgressDrawable.setProgressRotation(rotation);
 }
 @Override
 public void setVisibility(int visibility) {
   super.setVisibility(visibility);
   if (mProgressDrawable != null) {
     mProgressDrawable.setVisible(visibility == VISIBLE, false);
     if (visibility != VISIBLE) {
       mProgressDrawable.stop();
     } else {
       if (mProgressDrawable.isRunning()) {
         mProgressDrawable.stop();
       }
     }
   }
 }
 public void start() {
   if (!mProgressDrawable.isRunning()) {
     mProgressDrawable.start();
   }
 }
 public void stop() {
   if (mProgressDrawable.isRunning()) {
     mProgressDrawable.stop();
   }
 }
 public boolean isRunning() {
   return mProgressDrawable.isRunning();
 }