您的位置:首页 > 移动开发 > Android开发

android popup设置为不可点击后,按keyback也没有反应了?

2015-01-21 16:43 323 查看
最近自己在做一个项目是需要弹出信息框, 我使用的是popupwindow,我之前设置的有这个:

m_pop_GameMatchWaitTip.setBackgroundDrawable(new PaintDrawable());
m_pop_GameMatchWaitTip.setOutsideTouchable(true);

就是支持框体外点击获取焦点关闭,但是用户使用效果不佳,现在要改为信息提示框不可以点击屏幕关闭,要按keyback键关闭,经过自己的一番研究,如下方法可以实现解决这个问题:

就是在这个popupwindow.xml配置文件里面加上一个无关的view或者没有点击的需要的view即可,我设置如下:

 this.m_txt_Match_Name.setFocusableInTouchMode(true);
    this.m_txt_Match_Name.setOnKeyListener(new OnKeyListener() {

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK)
      {
           if (m_pop_GameMatchWaitTip != null)
           {
           
m_pop_GameMatchWaitTip.dismiss();
            }
           return true;
        }
       
return false;
}
});

这样就可以通过监听这个view,从而关闭这个popupwindow。

希望自己可以帮助到其他需要这个问题的朋友,有问题可以大家一起交流。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息