X 라는 이미지가 있으면 클릭을 하면 O로 바뀌면서 화면왼쪽에서 오른쪽으로 움직이게 하고 싶습니다.
문제는 이미지가 움직이는 모습이 아주 깔끔하게(?) 부드럽게 움직이게 표현하고 싶은데요
어떤식으로 해야할지 감이 잡히질 않아서요;;
도움 부탁드립니다! 혹시나 예제코드 있으시면 감사히..(- -);;(_ _);;
등가교환님이 잘 설명해 주셨네요
시간이 많이 남아서 소스를 써봅니다... 무려... 그냥 여기에 타이핑...
빨강색은 사용하시는 resource id 입니다.
////////////////////////
private static final int BG_QTY = 2;
private static final int IMAGE_O = 0;
private static final int IMAGE_X = 1;
private BitmapDrawable[] mBitmapBG;
private boolean buttonToggle;
private Animation anim;
void 초기화{
Resoureces res = getResources();
//사용할 bitmap 초기화
mBitmapBG = new BitmapDrawable[BG_QTY];
mBitmapBG[IMAGE_O] = new BitmapDrawable( BitmapFactory.decodeResource(res, R.drawable.img_o) );
mBitmapBG[IMAGE_X] = new BitmapDrawable( BitmapFactory.decodeResource(res, R.drawable.img_x) );
//사용할 애니매이션
anim = AnimationUtils.loadAnimation(getContext(), R.anim.anim);
//버튼에 리스너 걸기
mBtn = (Button)findViewById(R.id.btn);
mBtn.setOnClickListener(this);
}
private void toggleBtn(){
buttonToggle = !buttonToggle;
if(buttonToggle){
mBtn.setBackgroundDrawable( mBitmapBG[IMAGE_O] );
mBtn.startAnimation(anim);
}
else{
mBtn.setBackgroundDrawable( mBitmapBG[IMAGE_X] );
}
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.btn:
toggleBtn();
break;
default:
break;
}
}




이미지에 setOnClickListener 주시고 onClick() 안에 해당 이미지 변경해 주시면 됩니다.
그후 TranslateAnimation을 이용해서 이미지를 이동시켜주시면 됩니다.