onKeyDown () или onBackPressed () - PullRequest
10 голосов
/ 05 марта 2012

Я хочу реализовать функциональность кнопки «Назад» в моем приложении.В приложении всякий раз, когда я нажимаю на кнопку «Назад» в середине, мой элемент управления собирается перейти на страницу входа напрямую, поэтому кто-то может сказать мне, где переопределить onKeyDown() или onBackPressed() методы?

public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        Log.e("back key pressed","Back key pressed");
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

, потому что я 'я пишу это внутри onCreate и снаружи onCreate также, но это не работает ......

Ответы [ 4 ]

9 голосов
/ 05 марта 2012

Зависит от того, хотите ли вы поддерживать телефоны до Android 2.0. Метод onBackPressed() был добавлен в Android 2.0 (API 5).

Вы можете прочитать этот пост в блоге разработчика Android для получения подробной информации:

http://android -developers.blogspot.com / 2009/12 / назад и другие твердолобых клавиши-три-stories.html

4 голосов
/ 05 марта 2012

см. Код ниже. написать вне onCreate

  @Override  
    public boolean onKeyDown(int keyCode, KeyEvent event)  
  {  
         //replaces the default 'Back' button action  
         if(keyCode==KeyEvent.KEYCODE_BACK)  
         {  

                Intent intent = new Intent(currentActivity.this, RequiredActivity.class);
                finish();
                startActivity(intent); 

         }  
         return true;  
   }  
3 голосов
/ 05 марта 2012

Да, вы можете переопределить эту кнопку назад

public void onBackPressed() {

     Intent start = new Intent(currentclassname.this,which activity u want.class);
        startActivity(start);
        finishActivity(0);
        }

Таким образом, вы можете перейти к любой деятельности. Это очень легкий и простой способ

1 голос
/ 05 марта 2012

Если вас беспокоит удаление активности входа из стека истории.

Выполнить отделку ();в вашей активности входа в систему, когда вы начинаете любую другую деятельность с этого

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...