今天写代码时发现杀掉activityA@1后再启动activityA@2时,因为activityA@2的ImmersionBar先初始化了,之后activityA@1的OnDestroy才执行,而关键点是发现OnDestroy中确实是需要杀掉的activityA@1,而ImmersionBar也不是单例,所以最后查看源码发现这么一段:
if (mMap.get(mActivityName) == null)throw new IllegalArgumentException("在Fragment里使用时,请先在加载Fragment的Activity里初始化!!!");
而mMap的key是activity的名字,所以这就导致了后续的错误、
在Fragment里使用时,请先在加载Fragment的Activity里初始化!!!