我有一个应用程序,用户按下按钮,弹出自定义微调器,以便用户可以选择九种颜色。当用户触摸背景时(除了旋转器之外的每个地方),我希望旋转器被解雇。这可能吗?
我尝试在覆盖背景的图像上添加onTouchListener并调用
dialog.dismiss();
但它不起作用。
我的微调器是自定义Spinner,在xml文件中设置并弹出:
final Dialog dialog = new Dialog(this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.colorchooser);
提前谢谢
答案 0 :(得分:7)
首先,您应该能够添加
dialog.setCanceledOnTouchOutside(true);
完成你想要的。
但是dismiss()方法也应该正常工作,我猜你正在调用的地方是dialog.dismiss(),目前无法访问。