2010-11-20 2 views
1

В моем приложении у меня три действия. В моем третьем действии, если я нажимаю кнопку «домой», он попадает на главный экран Android (приложение все еще выполняется в фоновом режиме, которое я заметил с помощью оператора Log). Если я повторно запускаю приложение, тогда он начинается с первого действия. Как я могу загрузить его из третьей активности? Любой человек может дать мне ваше предложение ....Главная кнопка в android?

спасибо заранее ....

ответ

7

если вы нажмете кнопку домой, активность выполнить метод: OnPause() -> OnStop();
При повторном запуске приложения действие будет выполнять метод: onRestart() -> onStart() -> onResume() -> ....
контролировать активность с помощью этих методов. Мне жаль, что это вам не поможет.

0

Нет, это не начинается с первой активности. Если вы нажмете кнопку «Домой», а затем запустите операцию, нажав значок активности или долгое нажатие на дом (переключатель приложений), оно продолжит действие приложения, в котором вы были.

Возможно, вы включили флаг «немедленно уничтожить» в настройках разработки эмулятора или у вас осталось слишком мало памяти или вы сами убили процесс. В этих случаях Android может уничтожить вашу деятельность. Затем он перезапустится с запуском.

RG

1

Переопределите приведенный ниже метод.

@Override 
public void onAttachedToWindow() 
{ 
    Log.i("TESTE", "onAttachedToWindow"); 
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
    super.onAttachedToWindow(); 
} 

С помощью этого метода кнопка HOME перестает работать в этом действии (только это действие). Затем вы просто переопределяете, поскольку это было обычное событие кнопки (например, кнопка возврата).

public boolean onKeyDown(int keyCode, KeyEvent event) { 
if (keyCode == KeyEvent.KEYCODE_HOME) { 
    Log.i("TESTE", "BOTAO HOME"); 
    return true; 
} 
return super.onKeyDown(keyCode, event);  

}

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