您好,欢迎来到二三娱乐。
搜索
您的当前位置:首页recreate()和startActivity(getInte

recreate()和startActivity(getInte

来源:二三娱乐

在Activity里的各个生命周期里打上Log方法。

调用
startActivity(getIntent());
finish();
方法后,打印出来的生命周期:

a.png

调用
recreate();
方法后,打印出来的生命周期:


b.png

可以看到recreate()方法比startActivity(getIntent())多调用了一个onRestoreInstanceState方法,这个onRestoreInstanceState方法就是Activity用来自动保存状态的方法,主要是保存View的状态。大致是遍历View树,并调用每个View的SaveInstance方法。

所以如果要保存当前的View状态,就使用recreate()方法。
如果想完全重启Activity,就调用startActivity(getIntent())方法。

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

热门图文

Copyright © 2019-2025 yule263.com 版权所有 湘ICP备2023023988号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务