내에서 main.xml
내가 가진
<FrameLayout
android:id="@+id/frameTitle"
android:padding="5dp"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:background="@drawable/title_bg">
<fragment
android:name="com.fragment.TitleFragment"
android:id="@+id/fragmentTag"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</FrameLayout>
그리고 저는 이와 같이 조각 객체를 설정하고 있습니다
FragmentManager fragmentManager = activity.getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
Fragment newFragment = new FragmentType1();
fragmentTransaction.replace(R.id.frameTitle, casinodetailFragment, "fragmentTag");
// fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
FragmentType2,FragmentType3,...
다른 시간에 다른 유형의 Fragment 객체 ( )를 설정하고 있습니다. 이제 어느 시점에서 현재 어떤 객체가 있는지 식별해야합니다.
에서 짧은 나는 같은 것을 할 필요가 :
Fragment currentFragment = //what is the way to get current fragment object in FrameLayout R.id.frameTitle
나는 다음을 시도했다
TitleFragment titleFragmentById = (TitleFragment) fragmentManager.findFragmentById(R.id.frameTitle);
과
TitleFragment titleFragmentByTag = (TitleFragment) fragmentManager.findFragmentByTag("fragmentTag");
그러나 객체 (titleFragmentById 및 titleFragmentByTag)는 둘 다null
무엇입니까?
에 대해 사용 Compatibility Package, r3
하고 개발 중입니다 API level 7
.
findFragmentById()
그리고 findFragmentByTag()
우리가 사용하는 조각을 설정 한 경우 작동 fragmentTransaction.replace
또는 fragmentTransaction.add
것이지만 return null
우리가 XML에서 (I 내에서 한 일을 같은 객체를 설정 한 경우 main.xml
). XML 파일에 뭔가 빠진 것 같습니다.