首页 > 解决方案 > Fragment 中的数据即使在完成活动后也会保存其价值

问题描述

我的主要活动包含选项卡布局中的 4 个片段。

在我的一个片段中,我有以下字段

public class TemperatureFragment extends Fragment {
    static HashMap<Integer, String> imagesHashMap = new HashMap<Integer, String>();
    static boolean isDrown;
}

在我的onCreateView我为他们赋值。

我在这种情况下提出的问题。

  1. 我设置isDrown = ture
  2. 按下后退按钮,用户转到上一个活动。

当用户返回上一个活动然后返回主要活动时isDrown应该是错误的,但它是真实的。即使活动完成,它也会保存其价值。然后我检查了哈希映射大小,看看它是否保存了与 isDrown 相同的最后一个值,但它的大小不是 0。

我很困惑为什么isDrown不重新创建并将值 false 作为默认值?以及如何解决这个问题?

标签: javaandroidfragment

解决方案


推荐阅读