mPopupWindow.setFocusable(true);//获取焦点 gridview点击事件有效关键
mPopupWindow.setBackgroundDrawable(new PaintDrawable());//点击PopupWindow其他地方自动dismis方法
mPopupWindow.setTouchable(true);
mPopupWindow.setOutsideTouchable(true);
mPopupWindow.update();
gridView.setOnKeyListener(new OnKeyListener() {//按下android回退物理键 PopipWindow消失解决
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
if (mPopupWindow != null && mPopupWindow.isShowing()) {
mPopupWindow.dismiss();
return true;
}
}
return false;
}
});