在WindowManager中自定义了一个View作为悬浮窗,发现该View使用FLAG_NOT_TOUCH_MODAL这个Flag后,Listview和Editext输入法无响应、无效。用下面这种办法解决
当不需要WindowManager中自定义View的时候,把Flag设置成
mWindowManagerParams.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE ;
关于自定义悬浮窗,可以参考我之前写的:自定义组件+如何让自定义Layout截取Touch事件
http://blog.csdn.net/xzongyuan/article/details/39478023
public void setChildInvisible(){
visibled=false;
mBtnImg.setClickable(false);
mBtnVC.setVisibility(GONE);
mBtnKeyUp.setVisibility(GONE);
mBtnKeyDown.setVisibility(GONE);
mBtnVolUp.setVisibility(GONE);
mBtnVolDown.setVisibility(GONE);
mBtnExit.setVisibility(GONE);
mWindowManagerParams.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE ;
}
public void setChildVisible(){
visibled=true;
mBtnImg.setClickable(true);
mBtnVC.setVisibility(VISIBLE);
mBtnKeyUp.setVisibility(VISIBLE);
mBtnKeyDown.setVisibility(VISIBLE);
mBtnVolUp.setVisibility(VISIBLE);
mBtnVolDown.setVisibility(VISIBLE);
mBtnExit.setVisibility(VISIBLE);
mWindowManagerParams.flags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL ;
}
本文链接:http://blog.csdn.net/xzongyuan/article/details/39500049