我有一个弹出窗口,当我在我的列表活动中点击一个项目时,它会显示。问题是按返回键并不能关闭它。我尝试在我的列表活动中捕获返回键,但它没有注册...然后我尝试在传递给我的弹出窗口的视图上注册onkeylistener,像这样:
pop.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
boolean res=false;
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
// do something on back.
Log.e("keydown","back");
if (pw.isShowing()) {
Log.e("keydown","pw showing");
pw.dismiss();
res = true;
}
} else {
res = false;
}
return res;
}
});
这将传递给弹出窗口,例如:
pw = new PopupWindow(
pop,
240,
70,
true);
但是那个监听器也没有触发。你能帮我吗?我已经没有想法了 :)