1.响应返回键/响应键盘事件(onKeyListener)
最近在做PopupWindow, 发现使用PopupWindow一出现,不会响应popup外面的事件,经过资料查找,发现有两种方法可以响应外部事件。
/**
只是要简单的响应返回事件,即点击返回键,popup消失,那只需设置popup的背景就可以了
*/
popUpWindow.setBackgroundDrawable(new BitmapDrawable());
/**
如果要对返回事件进行重写,那就用如下方法
*/
//获取popup上的一个view
View viewInPopup = findViewById(xxx);
//必须写这一句,全这个view能够获取焦点,这才能响应外部的事件
viewInPopup.setFocusableInTouchMode(true);
viewInPopup.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
//对键盘事件进行重写
return false;
}
2.Popupwindow里面gridview在某些机子上,onItemClick无效
pop.setFocusable(true);
3.按返回键Popupwindow不会消失
pop.setFocusable(true);