在Android上单击后退按钮时调用的功能

tec*_*ner 4 android

当您单击android上的后退按钮时调用的函数.我的要求是当应用程序运行并且用户单击后退按钮时,应用程序的状态应该存储到数据库中,并且用户应该能够在他返回应用程序时看到状态.

浏览互联网,我知道我们可以使用onKeyDown()功能来处理控制.但是,即使我在我的代码中使用它,当我单击后退按钮时也不会调用该函数.以下是功能:

  @Override
  public boolean onKeyDown(int keyCode, KeyEvent event) {
      Log.d(null,"In on Key Down");
      if (keyCode == KeyEvent.KEYCODE_BACK) {
          moveTaskToBack(true);
          return true;
      }
      return super.onKeyDown(keyCode, event);
  }
Run Code Online (Sandbox Code Playgroud)

如果有人遇到相同/类似的情况,请建议.

小智 15

按下后退按钮时调用的activity函数是onBackPressed.

void onBackPressed()当活动检测到用户按下后退键时调用.

如果你是来这里而不是专门用于保存状态,那就是upvote:P


Rya*_*ves 6

使用Activity生命周期方法来保存和恢复状态.您可以在onPause期间保存状态并在onResume中恢复.在您的活动中:

 @Override
protected void onPause()
{
super.onPause();
    //Save state here
}

@Override
protected void onResume()
{
super.onResume();
    //Restore state here
}
Run Code Online (Sandbox Code Playgroud)

您也可以在onStart/onStop中执行此操作.在此处查看活动生命周期:http://developer.android.com/reference/android/app/Activity.html