gpt4 book ai didi

android - getSupportFragmentManager().getFragments() 已弃用?

转载 作者:太空宇宙 更新时间:2023-11-03 12:47:55 25 4
gpt4 key购买 nike

我正在使用 viewpager 并编译 API 23。我在我的代码中显示以下语句的编译错误,但该项目确实可以编译。

List<Fragment> fragments = getSupportFragmentManager().getFragments();

此外,我在支持 fragment 管理器和不支持 fragment 管理器的 android 文档中找不到此方法。有谁知道这里发生了什么?

最佳答案

我实际上这样做是为了获得对所有 fragment 的引用:

private List<WeakReference<Fragment>> mFragList = new ArrayList<WeakReference<Fragment>>();

@Override
public void onAttachFragment (Fragment fragment) {
mFragList.add(new WeakReference(fragment));
}

public List<Fragment> getActiveFragments() {
ArrayList<Fragment> ret = new ArrayList<Fragment>();
for(WeakReference<Fragment> ref : mFragList) {
Fragment f = ref.get();
if(f != null) {
if(f.isVisible()) {
ret.add(f);
}
}
}
return ret;
}

public Fragment findFragement(String tClass) {

List<Fragment> fragments = getActiveFragments();
for (Fragment fragment : fragments) {
if (tClass.equalsIgnoreCase("Home")) {
if (fragment instanceof ToggleFragment) {
return fragment;

}
} else if (tClass.equalsIgnoreCase("Contacts")) {
if (fragment instanceof ContactFragment) {
return fragment;
}
}
}
return null;
}

关于android - getSupportFragmentManager().getFragments() 已弃用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38772575/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com