我只有两个片段。
例如FragmentOne
和FragmentTwo
。
FragmentOne获得了运行功能captureCode();
的按钮,该功能可以打开相机并寻找条形码(nevermind)。
但是,当我打开surfaceView
中的相机时,我也可以看到选项卡FragmentTwo
,并且可以单击它。 (这很好)。但是我有问题。
如果我点击FragmentTwo
,我的surfaceView
仍然可见,并且看不到FragmentTwo
的任何内容。
当FragmentOne
处于活动状态时,如何停止FragmentTwo
中的所有内容?
答案 0 :(得分:1)
您可以通过以下方式获得可见的片段:
public Fragment getVisibleFragment() {
android.support.v4.app.FragmentManager fragmentManager = MainActivity.this.getSupportFragmentManager();
List<Fragment> fragments = fragmentManager.getFragments();
if (fragments != null) {
for (Fragment fragment : fragments) {
if (fragment != null && fragment.isVisible())
return fragment;
}
}
return null;
}
使用:
Fragment SelectedFragment = getVisibleFragment();
if (SelectedFragment != null && (SelectedFragment.getTag() == null || !SelectedFragment.getTag().equals("fragment_tag")))
//do something like invisible widgets...