gpt4 book ai didi

java - 与多个类共享一个 fragment ?

转载 作者:行者123 更新时间:2023-12-01 15:22:39 36 4
gpt4 key购买 nike

我想知道如何最好地创建进度条 fragment 。当然,它必须可供所有其他类使用。

目前我只有一个 ProgressBarFragment,它具有公共(public) setVisible 方法。通过 FragmentManager 获取 Fragment 我可以将其设置为可见或不可见。但这是执行此类操作的正确方法吗?

public class MyActivity exetends FragmentActivity {
void setVisibility(int visible) {
ProgressBarFragment fragment = (ProgressBarFragment) getSupportFragmentManager().findFragmentById(R.id.fragment_progress_bar);
fragment.setProgressBar(visible);
}
}

当然,我还有其他几个 fragment 也使用此代码来触发进度栏。

public class ProgressBarFragment extends Fragment {
public void setProgressBar(int visible) {
progressBar = (ProgressBar) getActivity().findViewById(R.id.progress_bar);
progressBar.setVisibility(visible);
}
}

最佳答案

您可以将此代码重构为 ProgressBarFragment 的静态方法

class ProgressBarFragment {
//...
static void setVisibility(Activity parent, int visible) {
ProgressBarFragment progressBar =
(ProgressBarFragment)parent.getSupportFragmentManager()
.findFragmentById(R.id.fragment_progress_bar);
progressBar.setProgressBar(visible);
//...
}

那么您将在任何地方使用 ProgressBarFragment.setVisibility(yourActivity, 1)

关于java - 与多个类共享一个 fragment ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10673447/

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