2016-04-21 10 views
0

ich eine Textview verwenden Wer auf Berührung durch folgenden CodeAnimation auf Textview nicht nach Textview Ort wechselnden Arbeits

tvPostText.setOnTouchListener(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      scaleGestureDetector.onTouchEvent(event); 
      if (event.getPointerCount() == 3) { 
       tvPostText.setRotation(rotation(event)); 
      } else if (event.getPointerCount() == 1) { 
       if (event.getAction() == MotionEvent.ACTION_MOVE) { 
        v.setX(event.getRawX() - v.getWidth()/2.0f); 
        v.setY(event.getRawY() - v.getHeight()/2.0f); 
       } 
      } 
      return true; 
     } 

geändert Animation auf sich bewerbe ich mich drehen Position. Wenn ich den Ort der Textansicht mit dem Finger berühre, funktioniert die Animation nicht richtig. kann mir jemand suggerst wie kann ich animation auf textview anwenden auch nach textview position ändern.

Es folgt Animation Code: -

RotateAnimation anim = new RotateAnimation(0.0f, 360.0f , Animation.RELATIVE_TO_SELF, .5f, Animation.RELATIVE_TO_SELF, .5f); 
      anim.setInterpolator(new LinearInterpolator()); 
      anim.setRepeatCount(Animation.INFINITE); 
      anim.setDuration(3000); 
      tvPostText.startAnimation(animRotate); 
+0

Aufruf 'tvPostText.setRotation (Rotation (Ereignis));' in 'if (event.getPointerCount() == 1)' – Kathi

+0

seine nicht –

Antwort

1

Verwenden Animator

  ObjectAnimator objectAnimator=ObjectAnimator.ofFloat(tvPostText,"rotation",0f,360f); 
      objectAnimator.setInterpolator(new LinearInterpolator()); 
      objectAnimator.setDuration(3000); 
      objectAnimator.setRepeatCount(ValueAnimator.INFINITE); 
      objectAnimator.start(); 
+0

arbeitet es für mich gearbeitet –

1

Try clearAnimation() auf Ihrem Textview rufen nach der Animation erfolgt. Es hat mir geholfen.

Verwandte Themen