Androidに各Activityを追加してライフサイクルの動きを確認する
Activityを追加して画面遷移をさせる
こんな感じにした。
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d("MainActivity", "onCreate"); setContentView(R.layout.activity_main); findViewById(R.id.nextButton).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { transitionSecondActivity(v); } }); } private void transitionSecondActivity(View view) { Intent intent = new Intent(this, SecondActivity.class); this.startActivity(intent); } }
public class SecondActivity extends AppCompatActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d("SecondActivity", "onCreate"); setContentView(R.layout.activity_second); findViewById(R.id.backButton).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { transitionMainActivity(v); finish(); } }); } private void transitionMainActivity(View view) { Intent intent = new Intent(this, MainActivity.class); this.startActivity(intent); } }
ライフサイクルを確認する
ライフサイクルメソッドを追加し、ライフサイクルに合わせてログを表示させて動作確認する。
03-12 21:42:30.882 22899-22899/com.example.name.hello D/MainActivity: onStart 03-12 21:42:30.888 22899-22899/com.example.name.hello D/MainActivity: onResume --- SecondActivity へ移動 ---- 03-12 21:42:34.882 22899-22899/com.example.name.hello D/MainActivity: onPause 03-12 21:42:34.892 22899-22899/com.example.name.hello D/SecondActivity: onCreate 03-12 21:42:34.899 22899-22899/com.example.name.hello D/SecondActivity: onStart 03-12 21:42:34.900 22899-22899/com.example.name.hello D/SecondActivity: onResume 03-12 21:42:35.123 22899-22899/com.example.name.hello D/MainActivity: onStop ---- MainActivity に戻る --- 03-12 21:42:37.619 22899-22899/com.example.name.hello D/SecondActivity: onPause 03-12 21:42:37.628 22899-22899/com.example.name.hello D/MainActivity: onCreate 03-12 21:42:37.639 22899-22899/com.example.name.hello D/MainActivity: onStart 03-12 21:42:37.639 22899-22899/com.example.name.hello D/MainActivity: onResume 03-12 21:42:37.870 22899-22899/com.example.name.hello D/SecondActivity: onStop 03-12 21:42:37.870 22899-22899/com.example.name.hello D/SecondActivity: onDestroy 03-12 21:43:37.505 22899-22899/com.example.name.hello D/MainActivity: onPause 03-12 21:43:37.540 22899-22899/com.example.name.hello D/MainActivity: onStop