Activity生命周期与finish方法

1.Activity的生命周期

图片源自官方文档
activity_lifecycle

2.finish方法

  • 在onCreate()中调用finish(),会走onDestroy()。
  • 在onStart()中调用finish(),会走onStop()。
  • 在onResume()中调用finish(),会走onPause()。

3.解释

  • 结合生命周期图,要重点理解生命周期是成对的,或者说是不同级别的。比如:onCreate和onDestroy为第一阶梯,onStart和onStop是第二阶梯,onResume和onPause是第三阶梯。对于finish方法来说,应该是尽快完成调用,从用户体验来说,这是最优策略。所以如果在第一阶梯上,那么直接走下第一阶梯就可以了,没必要再走上第二第三阶梯。
  • 为什么生命周期周期要是成对的?我的理解有两点:
    一、确保资源的正确释放。成对能保证资源生命周期正常。
    二、便于系统处理维护生命周期。