今天开发过程中遇到按返回键退出程序或者使用finish()退出活动返回登录界面后重新进入fragment不显示的问题。后来发现活动被finish()后之前创建的fragment依然存在,而重新进入活动后活动重新创建,而由于在创建fragment单例模式中使用懒汉模式,使fragment不能重新创建,而之前创建的fragment不能显示在新创建的活动中,因此将出现fragment不显示的情况。创建fragment的代码如下:
将其改为饥饿模式后如下:
这样每次重新进入活动后fragment就会重新创建了。