0
안드로이드
에, 회전 및 TranslateAnimation을 만들어 화면의 아무 곳이나 터치하면 그 다음 작업을 수행합니다나는 안드로이드 응용 프로그램을 만들려고 해요
- 새로운 이미지 뷰가 화면의 중앙에 표시한다을 (적어도이 예에서는 이미지보기의 그림이 화살표임을 나타냅니다.);
- 화면에 닿은 방향을 가리키는 화살표가 있습니다.
- 화살표는 화면 가운데에서 화면을 터치 한 위치로 애니메이션을 사용하여 변환해야합니다. 나는 안드로이드에 좀 새로 온 사람 때문에
내가 정확히 무엇을 할 수있는 가장 좋은 방법은 모르는, 그래서 다음, 작동하지 않는, 해결책을했다 :
happyrelativelayout.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() ==MotionEvent.ACTION_DOWN){
ImageView arrow = new ImageView(ctx);
arrow.setImageResource(R.drawable.arrow);
arrow.setX(centerx);
arrow.setY(centery);
float angle = -(float) Math.toDegrees(Math.atan2(centerx - event.getX(), centery - event.getY()));
arrow.setRotation(angle);
happyrelativelayout.addView(arrow);
arrowanimation = new TranslateAnimation(0, event.getX() - centerx, 0, event.getY() - centery);
arrowanimation.setFillAfter(true);
arrowanimation.setDuration(1000);
arrow.startanimation(arrowanimation);
}
}
}
으로 이 솔루션은 모든 것이 애니메이션을 제외하고 어떻게 움직여야 할 것 같아 보입니다. 화살표가 터치 된 지점으로 이동하더라도 애니메이션이 없으며 화살표가 가운데에서 터치 된 지점으로 깜박입니다. 나는 중요한 것을 놓친거야? 나는 이전 버전을 지원하기 위해 NineOldAndroids을 사용하려는 때문에 일반적이며,
와우! 완벽하게 작동했습니다! 고맙습니다! – user3170923
문제 없습니다. 도움이되기를 기뻐합니다. –