如何将我的活动升级到碎片并避免ClassCastException?

hun*_*erp 3 android android-layout android-fragments android-support-library

我有很多类的活动层次结构.我刚刚安装了v4兼容包.以一种方式获取我所有活动的最简单方法是什么?我可以在一个带有TabHost的Fragment中使用它们?

代码行:

    mTabsAdapter.addTab(mTabHost.newTabSpec("feed").setIndicator("Feed"), FActivity.class, null);
Run Code Online (Sandbox Code Playgroud)

第165行:

@Override
    public Fragment getItem(int position) {
                TabInfo info = mTabs.get(position);
                return Fragment.instantiate(mContext, info.clss.getName(), info.args);
            }
Run Code Online (Sandbox Code Playgroud)

具体来说,我想避免像以下错误:

07-19 01:33:24.940: ERROR/AndroidRuntime(17581): java.lang.ClassCastException: com.c.FActivity
07-19 01:33:24.940: ERROR/AndroidRuntime(17581):     at android.support.v4.app.Fragment.instantiate(Fragment.java:378)
07-19 01:33:24.940: ERROR/AndroidRuntime(17581):     at com.c.Main$TabsAdapter.getItem(Main.java:165)
07-19 01:33:24.940: ERROR/AndroidRuntime(17581):     at android.support.v4.app.FragmentPagerAdapter.instantiateItem(FragmentPagerAdapter.java:62)
Run Code Online (Sandbox Code Playgroud)

Ego*_*gor 6

以下是一些您可能感兴趣的链接.有一个例子是创建一个双活动应用程序,然后在其中实现片段.

Android用户界面设计:使用片段

Android兼容性:使用碎片

希望这可以帮助.