我需要檢查當前顯示的片段,以避免同樣的片段類的重新開張如何instanceof運算符使用的片段與
要啓動片段中使用代碼:
private Class mFragmentClass;
mFragmentClass = InfoFragment.class;
if (null != mFragmentClass) {
try {
mFragment = (Fragment) mFragmentClass.newInstance();
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.content_navigation_menu, mFragment).commit();
} catch (InstantiationException exception) {
exception.printStackTrace();
} catch (IllegalAccessException exception) {
exception.printStackTrace();
}
}
需要檢查當前顯示的片段:
if(mFragment instanceof (Fragment)mFragmentClass.newInstance())
是給編譯時間錯誤
[),預計,類型預期]
instanceof運算符的Java是用來測試對象是否是的一個實例指定類型。它期望一個類。 可能的重複:https://stackoverflow.com/questions/9294603/get-currently-displayed-fragment – Swati