我通过我的应用程序打开了pdf文件。当点击设备返回按钮时,它会自动回到我的应用程序。它工作正常。我想在设备中收回按钮事件。我覆盖后退按钮。但它不工作。请帮助我。
答案 0 :(得分:11)
这是你要问的一个例子:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK ) {
//do your stuff
}
return super.onKeyDown(keyCode, event);
}
答案 1 :(得分:1)
只需调用以下函数,这将关闭当前活动并将您移至上一个屏幕
finish();
答案 2 :(得分:0)
您可以覆盖Activity类中的onKeyDown事件,并查找KEYCODE_BACK的keyCode。为了防止进一步传播,您将返回true
以阻止系统处理它,这应该会阻止后退按钮将您的用户带出任何地方。
这违反了用户期望发生的规则,并且不推荐使用,除非您通过WebView中的页面或其他类似的内容覆盖后退按钮。
答案 3 :(得分:0)
public void onBackPressed() {
Intent intent = new Intent(CurrentActivity.this,
PreviousActivity.class);
startActivity(intent);
return;
}
答案 4 :(得分:0)
如果您已经在应用程序中处理了与pdf文件相关的操作(如读取等),即在应用程序中有Activity或Fragment处理此pdf文件操作,那么您可以覆盖onBackPressed()方法将逻辑放在那里。但是如果你是通过意图打开pdf,即使用intents action参数使用其他应用程序,那么你不能在应用程序中覆盖onBackPressed()或onKeyDown()事件。但是,您可以将您的逻辑放在您打开pdf文件的活动中的overActivityResult()方法中。