当显示进度对话框并按下搜索硬键时,它会关闭并移动到手机的搜索栏,即使进度Dialog setcancellable值设置为false也是如此。
我们怎么能避免这种情况?
答案 0 :(得分:1)
这对我有用
dialog = new ProgressDialog(this){
@Override
public boolean onSearchRequested() {
return false;
}
};
答案 1 :(得分:0)
没有必要避免这种情况。您不能禁止用户离开您的应用。他将始终能够按主页键返回并在后台发送您的应用程序。如果您有一个正在运行的notcancelable对话框,则用户将在重新进入您的应用程序时返回此活动。您必须以一种即使将应用程序发送到后台并稍后重新访问它也能正常工作的方式构建您的应用程序。
答案 2 :(得分:0)
我遇到了同样的问题并通过在进度对话框中设置OnKeyListener
来修复它,该对话框消耗了搜索按钮:
dlg.setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialogInterface, int i, KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_SEARCH) {
return true;
} else {
return false;
}
}
});
这对我有用。