创建包含 BottomNavigationView 的 MainActivity 静态实例

Creating static instance of MainActivity containing BottomNavigationView

我正在尝试创建一个包含 BottomNavigationView 的 MainActivity 静态实例,但这总是发出警告。我知道在静态字段中放置 android 上下文 类 会导致内存泄漏,但仅当我使用 BottomNavigationView 时才会收到此警告。我不明白为什么在没有 BottomNavigationView 的情况下不显示此警告以及删除此警告的最佳方法是什么?

警告消息:

Do not place Android context classes in static fields (static reference to MainActivity which has field bottomNav pointing to BottomNavigationView); this is a memory leak (and also breaks Instant Run)

我的代码:

public class MainActivity extends AppCompatActivity {
    BottomNavigationView bottomNav;
    ImageView rootIndicator;
    ...
    ...
}

public class Utils {
    public static MainActivity activity;
    ...
    ...
}

如果您发现自己处于像现在这样考虑保存对 Activity 的静态引用的情况,请重新考虑您的整个设计,因为您永远不应该这样做,并且以后只会引起更多的问题。

如果你告诉我们你想做什么,我们也许能以更好的方式帮助你。