안녕하세요.


아래의 소스 코드 처럼 FrameLayout 에 ImageView 를 여러개 addView 한 후 ImageView를 터치해서 드래그 하려고 합니다.

첫번째, 두번째 이미지를 addView 후 각각의 이미지를 터치하면 드래그가 잘 됩니다.

그런데, 세번째 이미지를 addView 하면 두번째, 세번째 이미지만 드래그가 되고, 첫번째 이미지는 드래그가 안되네요.


이미지를 터치하면 bringToFront 로 처리해서 하는데... 아마도 이부분이 문제일듯 싶은데요..

터치한 뷰외는 sendToBack 하면 될 듯 한데... 왜 sendToBack api 는 왜 없을까요? ㅠㅠ


왜 두개만 되고 두개 이상부터는 bringToFront 가 안될까요? 고수님들의 도움이 필요합니다.


imageView = new ImageView(Photo.this);

imageView.setOnTouchListener(new OnTouchListener() {

@Override

public boolean onTouch(View v, MotionEvent event) {

switch (event.getAction()) {

case MotionEvent.ACTION_DOWN: 

status = START_DRAGGING;

v.bringToFront();

v.invalidate();

break;

case MotionEvent.ACTION_MOVE:

if (status == START_DRAGGING) {

v.setPadding((int) event.getRawX(), (int) event.getRawY()-30, 0,0);

}

break;


case MotionEvent.ACTION_UP:   

status = STOP_DRAGGING;

break;

}

return true;

}

});