我想在未调用该方法时隐藏片段中的视图onAttach()
。我知道在这种方法之前不会隐藏视图,但我想知道有什么方法可以实现这一点吗?
更具体地说,我的问题是我想在片段(B(中隐藏一些视图,当我在其他片段(A(中并且在片段B中调用onAttach()
方法之后,必须隐藏视图。
您可以在官方文档 https://developer.android.com/guide/components/fragments 中浏览片段生命周期。片段的视图首先在onCreateView()
生命周期中绘制,即在onAttach()
之后,您可以初始化视图并将其设置为不可见。因此,当您的片段 B 加载时,用户将无法看到这些视图,并且它将被隐藏。
将可见性设置为从 xml 文件中消失/不可见,当您需要显示时,以编程方式将可见性设置为可见。
我解决了我的问题。首先,应该提到的是,片段用于FragmentStatePagerAdapter
,我不确定是否正确,但我的片段是按以下方式调用的
companion object {
internal var addressQFragment = AddressQFragment()
fun newInstance(): AddressQFragment {
return addressQFragment
}
}
因此,在调用函数之前onAttach()
我可以更改所有变量。使用它,我首先更改了我的标志,当创建视图时,它将使用此标志并隐藏必要的视图。如果有更正确的方法,我在等你的答案。