4
애니메이션 이미지보기가 오른쪽에서 가운데로 움직이는 응용 프로그램을 개발 중입니다. 이미지를 클릭하면 OnClick()이 호출됩니다. 그러나 이미지 이동 경로 (이미지 뷰 근처)에서 화면을 클릭하면 OnClick()이 실행됩니다. 이미지 뷰에만 클릭 리스너를 설정하는 방법을 알려주십시오. 내 코드는 다음과 같습니다 애니메이션이 이미 완료되면애니메이션 이미지 뷰에 onclick 리스너를 설정하는 방법
ll = new LinearLayout(this);
ll.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
ll.setOrientation(LinearLayout.VERTICAL);
ll.setGravity(Gravity.CENTER);
imageView=new ImageView(getApplicationContext());
imageView.setImageResource(R.drawable.moveimage1);
int width=getWindowManager().getDefaultDisplay().getWidth()/2;
System.out.println("width==="+width);
moveLefttoRight = new TranslateAnimation(width, 0, 0, 0);
moveLefttoRight.setDuration(3000);
moveLefttoRight.setRepeatCount(TranslateAnimation.INFINITE); // animation repeat count
moveLefttoRight.setRepeatMode(2);
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Clicked", Toast.LENGTH_LONG).show();
System.out.println("Clicked");
}
});
imageView.startAnimation(moveLefttoRight);
ll.addView(imageView);
setContentView(ll);
이미지보기가 애니메이션으로 재생되는 동안 또는 애니메이션이 완료된 후에 onClick()이 실행되는 것을 의미합니까? – San
L1 linearLayout에 해당 이미지 뷰가 있습니까? – Amrut
클릭하면 onClick()을 실행하고 싶습니다. –