Я хочу перенести событие в диалог из представления onTouchListener
Я пробовал AlertDialog.dispatchTouchEvent, но это не работает, событие просто останавливается на моем виде и больше не go.
Код :
final View v = new View(this);
v.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
final WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.format = PixelFormat.TRANSLUCENT;
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.height = WindowManager.LayoutParams.MATCH_PARENT;
params.packageName = getPackageName();
getWindowManager().addView(v,params);
v.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v,MotionEvent event) {
if(event.getAction()==MotionEvent.ACTION_UP) {
d.getButton(DialogInterface.BUTTON_NEGATIVE).setText(no);
d.getButton(DialogInterface.BUTTON_POSITIVE).setText(yes);
} else {
int[] pos = new int[2];
Button b = d.getButton(DialogInterface.BUTTON_NEGATIVE);
int w = b.getWidth();
int h = b.getHeight();
b.getLocationOnScreen(pos);
if(event.getRawX() < pos[0] + w && event.getRawX() > pos[0] && event.getRawY() < pos[1] + h && event.getRawY() > pos[1]) {
b.setText(yes);
d.getButton(DialogInterface.BUTTON_POSITIVE).setText(no);
} else {
b.setText(no);
d.getButton(DialogInterface.BUTTON_POSITIVE).setText(yes);
}
}
return d.dispatchTouchEvent(event);
//return false;
}
});
d - диалог, который я хочу передать MotionEvent ... да, нет - строки с текстом