2017-01-23 4 views
-3

У меня есть 2 экрана, соответствующих 2 действиям в приложении для Android. Я пытаюсь вернуться к первому действию со второго экрана, нажав кнопку «Назад». Несмотря на то, что моя первая активность перезапускается, я получаю раздражающее всплывающее сообщение «К сожалению, приложение остановилось», так как мое приложение обновляется, чтобы вернуться к первому действию. Я бы не хотел, чтобы это сообщение появилось.Как переключиться на предыдущую активность на Android без сообщения об ошибке?

Я пробовал разные варианты кода и появляется сообщение каждый раз, когда:

@Override 
public void onBackPressed() { 
    startActivity(new Intent(this, MainActivity.class)); 
} 

или

public void finishActivity(DisplayMessageActivity v){ 
    Intent intent = new Intent(this, MainActivity.class); 
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
} 

или даже просто

public void finishActivity(DisplayMessageActivity v){ 
    finish(); 
} 
+0

[logcat расскажет вам, почему ваше приложение остановилось) (http://stackoverflow.com/questions/23353173/unappro-myapp-has-stopped-how-can-i-solve-this). Пожалуйста, отредактируйте свой вопрос. –

+0

Спасибо, я не думал проверять это - решил мою проблему! – pyqueen9

ответ

0

Вы должны прочитать журналы, чтобы найти что такое исключение и почему оно происходит. Проверяемые места:

  1. Если логика обратной навигации находится внутри OnClickListener, то внутри кода OnCLickListener, вероятно, имеет значение null.
  2. Активность, на которую она должна идти после нажатия назад, имеет нулевое значение для того, что вы пытаетесь использовать.
  3. Любые асинхронные вызовы из старой активности после ее удаления.

Ваш журнал должен точно сказать, что это такое.

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