How can I refresh a previous activity after the back button is pressed?

隐身守侯 提交于 2019-12-06 04:38:56

问题


I am building an alarm application. I currently have a ListActivity which display the list of alarms and another activity which changes the time of a particular alarm. My problem is, when I decide to enter into the activity to change the time of an alarm and then I press the back button, it does not refresh. However, I've implemented a button that redirects back to the ListActivity and if I press it, the list of alarms are refreshed. How can I, after pressing the back button, refresh the list of alarms?


回答1:


You should probably override your onResume() to check if the list of alarms have been refreshed so that whenever you come to/come back to your ListActivity, it'll get updated.




回答2:


In your alarm list activity

use

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

If you done this in onResume then its call two times first when your activity start n 2nd when your activity restart.




回答3:


here is the code.

@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);
    }

i always use this when back is listview.




回答4:


I am using following one.

Intent intent = new Intent(CurrentActivity.this, PreviousActivity.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        CurrentActivity.this.finish();


来源:https://stackoverflow.com/questions/16175369/how-can-i-refresh-a-previous-activity-after-the-back-button-is-pressed

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!