2012-01-16 3 views
0

Я стараюсь, чтобы переопределить этот метод и застрял с некоторой проблемойкнопку назад еще закрыта мое приложение

public boolean onKeyDown(int keyCode, KeyEvent event) { 
     if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { 
      if(screenStatus >=1) 
      {screenStatus=0; 
       indexMenu(); 


      } 
      if(screenStatus==0) 

       { 
       finish(); 
       }return false; 
     } 

     return super.onKeyDown(keyCode, event); 
    } 

, когда я нажимаю на BackButton мое приложение закрыто .. но если посмотреть на код .. должен быть вызов функции indexMenu(); Я имею в виду, что у меня есть меню ... нажмите один из меню (например, начинайте, например ..) и у меня появилось новое окно. Там я нажимаю кнопку «Назад», и я вижу, как приложение возвращается в главное меню (indexMenu()) и закрывается (1 секунда после возвращения в indexMenu())

Может ли кто-нибудь сказать мне, как исправить это?

С уважением, Питер

Аналогичная проблема я нашел здесь Back button and last activity , но мне не нужно alertBuilder .. и не нужно другое сообщение на экране .. просто хочу вернуться к indexMenu() без проблем.

UPD ПОСЛЕ HELP ОК после помощи этот код работать отлично для меня:

@Override 
    public void onBackPressed() 
    { 
     if (screenStatus>=1) 
     { 
      indexMenu(); 
      screenStatus=0; 
      // super.onBackPressed(); 
     } 
     else if(screenStatus==0) 
     { 
      finish(); 
      super.onBackPressed(); 
     } 
    } 

Благодаря: lordl, PKeidel

ответ

2

Я сделал это так, и это работает прекрасно:

@Override 
    public void onBackPressed() 
    { 
     if (youWantToCloseTheApp) 
      super.onBackPressed(); 
     else 
      // Do other funny things here 
    } 
+0

благодарственное дружище, эта информация новое для меня, и это очень помогает мне. – Peter

+0

Вы не всегда можете положиться на это! –

1

Override onBackPressed() вместо этого, и обработать его там. Если вы не вызываете super.onBackPressed(), приложение не будет закрываться.

Смежные вопросы