为什么在下一个活动结束时调用上一个活动的onCreate()?

时间:2014-05-03 08:55:23

标签: android activity-lifecycle

我有一个活动,比如说MainActivity只有onCreate方法(没有onResume,onStop等) 单击contBut时,会启动另一个活动,例如SecondActivity,按下exitBut,我们将导航回MainActivity。在这种情况下,onCreate of MainActivity被召回,我无法理解为什么。我希望它能恢复活动,或者至少不打电话给onCreate。 这是MainActivity的代码:

public class MainActivity extends Activity {

    private Button contBut;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    contBut = (Button) findViewById(R.id.cont);
    contBut.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View view) {
             Log.d("d", "in count onclick");
           Intent intent = new Intent(MainActivity.this, ContActivity.class);
           startActivity(intent);
         }
    });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    } 
}

这是SecondActivity的代码:

public class SecondActivity extends Activity{

private Button exitBut;

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_cont);

        exitBut = (Button) findViewById(R.id.exit);
        exitBut.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
               finish();
            }
         });
}

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
 }

}

1 个答案:

答案 0 :(得分:2)

问题解决了。 在我的设备的开发者选项部分,"不要保持活动"被检查了。