从文档开始:
public void setRetainInstance(boolean retain)
控制是否在活动重新创建(例如从配置更改)中保留片段实例.这只能用于不在后栈中的片段.如果设置,则在重新创建活动时,片段生命周期会略有不同:
- onDestroy()不会被调用(但是onDetach()仍然会被调用,因为片段正在与其当前活动分离.
- 因为片段没有被重新创建,所以不会调用onCreate(Bundle).
- onAttach(Activity)和onActivityCreated(Bundle)仍将被调用.
我有一些问题:
片段是否也保留其视图,还是会在配置更改时重新创建?"保留"究竟是什么意思?
当用户离开活动时,片段是否会被销毁?
为什么它不适用于后端堆栈上的碎片?
哪个是使用此方法有意义的用例?