作为Android开发者,很可能在使用PopupWindow时出现各种各样的问题
比如调用setOutsideTouchable方法没有效果的情况
以下说几点:
如果要使用点击区域外使对话框消失,必须调用以下方法:
popupWindow.setFocusable(true);//这里必须设置为true才能点击区域外或者消失
popupWindow.setTouchable(true);//这个控制PopupWindow内部控件的点击事件
popupWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
popupWindow.setOutsideTouchable(true);
popupWindow.update();
这样做就可以了;但是问题又来了,如何让点击区域外不消失呢:
除了上面的设置外
popupWindow.setOutsideTouchable(false);
光设置这一行是没有效果的
popupWindow.setFocusable(false);//点击区域外不会消失,点击返回会执行back事件
必须添加这一行将其设置为false才能实现点击区域外不消失
好了,就到此吧!下次见!