我与片段在Android的播放。
I am playing with Fragment in Android.
我知道我可以通过以下code修改片段:
I know I can change fragment by using the following code:
FragmentManager fragMgr = getSupportFragmentManager();
FragmentTransaction fragTrans = fragMgr.beginTransaction();
MyFragment myFragment = new MyFragment();//my custom fragment
fragTrans.replace(android.R.id.content, myFragment);
fragTrans.addToBackStack(null);
fragTrans.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
fragTrans.commit();
我的问题是,在一个Java文件,我怎么能得到当前显示的片段实例?
My question is, in a Java file, how can I get the currently displayed Fragment instance ?
当您在交易中添加的片段,你应该使用的标记。
When you add the fragment in your transaction you should use a tag.
fragTrans.replace(android.R.id.content, myFragment, "MY_FRAGMENT");
...如果你想检查片段可见以后:
...and later if you want to check if the fragment is visible:
MyFragment myFragment = (MyFragment)getFragmentManager().findFragmentByTag("MY_FRAGMENT");
if (myFragment != null && myFragment.isVisible()) {
// add your code here
}
另请参见http://developer.android.com/reference/android/app/Fragment.html