2016-06-15 3 views
1

내 이미지가 이상하게 움직이며 연속적으로 필요할 때 임의의 순간에 일시 중지됩니다. 멈추고 작동합니다. 보다 효율적으로 게시 할 수 있도록 게시하십시오. 또한 코드를 줄이는 방법이 있는지 살펴보십시오.ontouchlistener가 작동하지 않습니다.

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.MotionEvent; 
import android.view.View; 
import android.widget.Button; 
import android.widget.ImageView; 
import android.widget.TextView; 

public class MainActivity extends AppCompatActivity { 
public int x; 
public float g =10.0f; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     final ImageView iconss = (ImageView) findViewById(R.id.craft); 
     final Button button1 = (Button) findViewById(R.id.left); 
     final TextView txt1 = (TextView)findViewById(R.id.fail); 
     final Button button2 = (Button) findViewById(R.id.Right); 

     button2.setOnClickListener(new View.OnClickListener(){ 

      public void onClick(View v) { 
       g = g + 10f; 
       x = 1; 

       final CharSequence work; 
       work = "it is working"; 
       txt1.setText(work); 

       iconss.setTranslationX(g); 
      } 

     }); 

     button2.setOnTouchListener(new View.OnTouchListener() { 
      @Override 
      public boolean onTouch(View v,MotionEvent event) { 
       g = g + 10f; 
       x = 1; 

       final CharSequence work; 
       work = "it is working"; 
       txt1.setText(work); 

       iconss.setTranslationX(g); 

       return false; 
      } 
     }); 

     button1.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       g = g - 10f; 
       x = 1; 

       final CharSequence work; 
       work = "it is working"; 
       txt1.setText(work); 

       iconss.setTranslationX(g); 
      } 
     }); 

     button1.setOnTouchListener(new View.OnTouchListener() { 
      @Override 
      public boolean onTouch(View v,MotionEvent event) { 
       g = g - 10f; 
       x = 1; 

       final CharSequence work; 
       work = "it is working"; 
       txt1.setText(work); 

       iconss.setTranslationX(g); 

       return false; 
      } 
     }); 
    } 
} 

답변

0

ClickEvent와 TouchEvent 사이에는 문제가 있습니다.

당신은 버튼을

을 클릭하면 이미지가

  • 설정 전환 시간

  • 시작 애니메이션으로 이동합니다 TouchListener을 제거하고 목표 위치 계산

    1. 애니메이션

      로 교체한다
  • 관련 문제