android-当用户触摸到其他地方时,关闭微调器

android-当用户触摸到其他地方时,关闭微调器,android,android-spinner,ontouchlistener,dismiss,Android,Android Spinner,Ontouchlistener,Dismiss,我有一个应用程序,用户按下一个按钮,弹出一个自定义微调器,用户可以在九种颜色中进行选择。我希望当用户触摸背景时(除了微调器之外,屏幕上的每个位置)微调器都被关闭。这可能吗 我试图在覆盖背景和调用的图像上添加onTouchListener dialog.dismiss(); 但它不起作用 “我的微调器”是自定义微调器,设置在xml文件中并弹出: final Dialog dialog = new Dialog(this); dialog.requestWindowFeature(Window.

我有一个应用程序,用户按下一个按钮,弹出一个自定义微调器,用户可以在九种颜色中进行选择。我希望当用户触摸背景时(除了微调器之外,屏幕上的每个位置)微调器都被关闭。这可能吗

我试图在覆盖背景和调用的图像上添加onTouchListener

dialog.dismiss(); 
但它不起作用

“我的微调器”是自定义微调器,设置在xml文件中并弹出:

final Dialog dialog = new Dialog(this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.colorchooser);

提前感谢您

首先,您应该能够添加

dialog.setCanceledOnTouchOutside(true);
去完成你想要的


但是dismise()方法也应该可以工作,我猜您正在调用dialog.dismise()的位置目前无法访问。

dialog.setCanceledOnTouchOut(true);这正是我想要的,谢谢!