java - Fragment onStart 在当前 Fragment 中被激活
问题描述
我有使用 4 个片段 a1、a2、a3、a4 的 TabLayout,问题是当我输入 a1 片段时,a2 片段也已激活,而当我进入 a2 片段时它已经激活,看起来像这样 => a1(Entered>已激活)-a2(已激活)-a3(未激活)-a4(未激活)另一种情况:a1(未激活)-a2(已激活)-a3(已输入>已激活)-a4(已激活)很难解释,我认为我的代码工作正常,为什么会出现这样的问题,如何解决?
解决方案
覆盖setUserVisibleHint
以检查片段是否已激活
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
//this Fragment is visible
} else {
//this Fragment is invisible
}
}
推荐阅读
- javascript - 我正在尝试使网站永远加载。我怎样才能做到这一点?
- django - 如何将选择字段添加到 Django 表单以进行用户注册?
- c - 试图创建一个以当前日期为文件名的文本文件,但 fopen 不生成文件
- python - Tkinter 中的菜单项无法正常工作(在 MacOS 中)
- javascript - JSON 对象更改属性
- python - 使用 matplotlib 在 Python 上绘制地下水位
- android - 在android Kotlin中更改错误消息背景颜色而不是文本颜色自定义TextInputLayout
- spring - 无法使用 Spring Boot 解析 JavaFX 应用程序的占位符
- go - 如何使用 pprof 运行特定函数的 CPU 配置文件?
- python - 在列表中使用内联 for 循环并在 python 中平展结果的最佳方法