Android 如何在不刷新的情况下重新加载活动?

Android 如何在不刷新的情况下重新加载活动?,android,Android,我切换到下一个屏幕,然后返回到原始屏幕,希望选择我停止的位置,保存和恢复数据。在活动1中:我有10多个按钮可以选择和取消选择按钮,如果转到下一个屏幕,如果我返回,它不应重新加载,它应显示我停止的位置 up1 = (Button) findViewById(R.id.adultup1); up1.setOnClickListener(new View.OnClickListener() { public void onClick(View view) {

我切换到下一个屏幕,然后返回到原始屏幕,希望选择我停止的位置,保存和恢复数据。在活动1中:我有10多个按钮可以选择和取消选择按钮,如果转到下一个屏幕,如果我返回,它不应重新加载,它应显示我停止的位置

    up1 = (Button) findViewById(R.id.adultup1);
    up1.setOnClickListener(new View.OnClickListener() {

        public void onClick(View view) {
            if (upt1 == 0) {
                up1.setBackgroundResource(R.drawable.adultup1);
                upt1 = 1;
            } else {
                up1.setBackgroundResource(R.drawable.adultup1_pressed);
                upt1 = 0;
            }
        }
    });
在此处查看图像(并阅读文本):

如果您不需要重新加载状态,您应该考虑在每个活动状态下您在做什么

如果您这样做:

Activity1->startActivity(Activity2)->Activity2->Activity2.onBackPressed->Activity1

比,没有重新加载。从第二位返回到第一位时,您会被呼叫
onResume

但如果你这样做了:

Activity1->startActivity(Activity2)->Activity2->startActivity(Activity1)->Activity1

然后,您需要将您的状态保存在某个外部类(静态类成员)中,并在
onCreate
状态中从中加载Activity1状态。
当app进程被终止,用户返回到中断的活动时,情况也是一样的(如图所示)

如果您只需在Activity2上使用
finish()
返回Activity1,则不会调用
onCreate
,只调用onResume


存储按钮状态

public static int _state = -1;

onCreate(Bundle savedInstanceState){
    if(_state == -1){
        _state = 0;
        // this is first time we're using "_state" variable, so do init
    } else {
        // this is second or later, so just load state variable and setup UI
    }
}

什么的样本代码?我认为,您需要了解如何在每个确切的活动案例Activity1->startActivity(Activity2)->Activity2->Activity2.onBackPressed->Activity1中处理活动生命周期。在这里,我如何将状态存储在静态类中再次读取,在这种情况下,状态被保存,而不是被创建时的
覆盖,所以你不需要把它存储在课堂上。活动2:意图=新意图(seek.this,MainScreen.class);星触觉(意向);这里我得到了一个新的。@user828948试图创建一些示例代码,它可用于存储一个状态,您必须修改它以满足您的需要