1
목록보기가 있습니다. 사용자는이 목록보기를 오버레이하는 전체 화면 Window.FEATURE_NO_TITLE)
에서 대화 상자를 열 수 있습니다. 사용자가이 대화 상자의 배경을 터치하면 닫힙니다.터치 이벤트를 다른보기로 위임하십시오.
이 터치 이벤트를 목록보기에 위임해야합니다. 내 말은, bg에 MotionEvent.ACTION_DOWN
후에 나는 대화를 닫아야한다. (잘 작동한다.) 목록보기에서 MotionEvent.ACTION_DOWN
을 시작한다.
((LinearLayout) findViewById(R.id.dialog_bg)).setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
MotionEvent motionEvent = MotionEvent.obtain(event);
activity.findViewById(R.id.fr_projects_list).dispatchTouchEvent(motionEvent);
close();
break;
default:
break;
}
return false;
}
});
그것은 시작 ACTION_DOWN
목록보기에 :
터치 이벤트를 종료하면 대화 상자를 닫습니다. 그래서 대화 후에 다른 이벤트는 없을 것입니다. 그리고 나는 목록보기의 사건으로해야한다. – Suvitruf
@Suvitruf 답변을 업데이트했습니다. 그냥 시도 .. 호출 동작이 ACTION_UP 인 경우에만 닫기 – Praveen
고객이 ACTION_UP이 아닌 ACTION_DOWN에서 대화 상자를 닫으려고합니다. 그것은 내 선택이 아니에요) = – Suvitruf