2012-05-10 4 views
1

나는이 이상한 문제가 있습니다. rotateAnimation을 사용하여 고정 된 지점을 중심으로 회전하는 이미지가 있습니다. 사용자가 이미지를 클릭하면 아래 그림과 같이이미지 클릭 애니메이션 후

내가 클릭 이벤트를 처리 한 :

@Override 
public void onClick(View v) { 
    switch (v.getId()) { 
    case R.id.imageView1: 
     finish(); 
     Intent i = new Intent(this, Next.class); 
     startActivity(i); 
     break; 
     } 
} 
내가 직면 문제는 내가 이미지를 회전 한 후 나는를 클릭하면 클릭 이벤트가 발생하지 않는 점이다

이미지가 있지만 이미지가 처음 있던 위치를 클릭하면 트리거됩니다.

나는 여기서 기본적인 것을 놓치고 있어야한다는 것을 알고있다. 그러나 나는 그것을 이해할 수 없다.

+0

Android에서 애니메이션을 제작하는 것은 매우 어려운 작업입니다. 문서는 불완전하지만 정확하지 않은 경우가 많습니다. 애니메이션은 논리적이지만 완전히 임의적 인 방식으로 작동하지 않습니다. 유일한 해결책은 시험과 테스트를 통해 시간을 낭비하는 것입니다. 물론 안드로이드 팀이 새 릴리스에서 다시 문제를 해결할 때까지는 그렇습니다. – RunLoop

답변

6

Animation이 애니메이션의 위치 또는 크기를으로 변경하지 않습니다. 그들은 단지 View의 속성에 영향을 미치지 않고 그러한 변형을 보여줍니다. 그러므로 당신이 보는 행동.

View 개체를 실제로 이동/크기 조정하려는 경우 AnimationListener을 구현하고 onAnimationEnd에서 작업을 수행하십시오.

+0

감사합니다 @rajesh ..하지만 이미지 클릭 대신에 애니메이션이 끝날 때 이벤트가 발생하지 않겠습니까? – Preethi

+0

작동에 의해, 나는'View'를 움직이거나 사이즈를 바꾸는 것을 의미 했으므로 당신이 기대하는 곳에서 볼 수 있습니다. onAnimationEnd'에서'onClick' 행위를 구현하는 것을 의미하지는 않습니다. – Rajesh

+0

감사 .. 같은 작업을 메신저 .. – Preethi

관련 문제