3

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

+0

onRestart() лучше для этого! onResume() выполняет процедуру дважды, а onRestart() вызывается при нажатии кнопки «Назад», и процедура выполняется только один раз. –

ответ

8

Возможно, вы должны переопределить функцию onResume(), чтобы проверить, был ли обновлен список аварийных сигналов, так что всякий раз, когда вы приходите/возвращаетесь в ListActivity, он будет обновляться.

7

В вашей тревоги списка активности

использование

public void onRestart() { 
    // reload your list items if changed and adapter.notifydatastatechange(); 
} 

Если вы сделали это в onResume то его вызов в два раза первый при запуске н второй, когда ваш рестарт деятельность вашей деятельности.

+2

Этот ответ правильный !!! OnRestart() работает лучше, чем OnResume() для этого! –

+2

Я тестировал using onResume(), и когда действие создано, оно вызывает функцию (и это необязательно). Но используя onRestart(), он вызывается только в случае кнопки Activity, вызванной обратным (и это то, что мы хотим). Поэтому использование onRestart() намного лучше для этого! –

2

вот код.

@Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
     if (keyCode == KeyEvent.KEYCODE_BACK) { 
      Intent a = new Intent(this,yourback.class); 
      a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
      startActivity(a); 
      return true; 
     } 
     return super.onKeyDown(keyCode, event); 
    } 

Я всегда использую это, когда обратная сторона списка.

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