화면을 클릭하면 R.drawable.bullethole이 클릭한 좌표에 나타나도록 하기 위해서
onDraw에 이미지를 그려놓고(기본 좌표는 -100, -100)
onTouchEvent가 발생할 때마다 x,y값을 받아와서 적용하는데요
onDraw안에 onTouchEvent를 넣을수가 없어서 따로 분리를 하다보니
자꾸 invalidate가 되어서 이전 자국은 사라지고 새 좌표에 하나만 뜹니다
저는 누를 때마다 이미지가 추가되는.. 이전 클릭 지점에도 남아있게 하고 싶거든요
public class MainActivity extends Activity {
private MyView mview;
float x = -100;
float y = -100;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mview = new MyView(this);
setContentView(mview);
mview.setFocusable(true);
mview.setFocusableInTouchMode(true);
}
class MyView extends View{
BitmapDrawable mBmDrawable = null;
MyView (Context context){
super(context);
mBmDrawable = (BitmapDrawable)context.getResources().getDrawable(R.drawable.bullethole);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawBitmap(mBmDrawable.getBitmap(),x, y, null);
super.onDraw(canvas);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
if(event.getAction()==MotionEvent.ACTION_DOWN){
x=event.getX();
y=event.getY();
invalidate();
//mPool.play(mDdok, 1, 1, 0, 0, 1);
return true;
}
return false;
}
}
}
어디를 건드려야 이전 이미지가 계속 남을까요? 자세히 설명부탁드려요ㅠㅠ