Как обновить мои действия до фрагментов и избежать исключения ClassCastException? - PullRequest
3 голосов
/ 19 июля 2011

У меня довольно большая иерархия классов, которые представляют собой Действия. Я только что установил пакет совместимости v4. Какой самый простой способ получить все мои действия таким образом, чтобы я мог использовать их во фрагменте с TabHost внутри?

Строка кода:

    mTabsAdapter.addTab(mTabHost.newTabSpec("feed").setIndicator("Feed"), FActivity.class, null);

Строка 165:

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

В частности, я хочу избежать ошибок, таких как:

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)

1 Ответ

6 голосов
/ 19 июля 2011

Вот несколько ссылок, которые могут вас заинтересовать. Существует пример создания приложения с двумя действиями, а затем внедрения в него фрагментов.

Дизайн пользовательского интерфейса Android: работа с фрагментами

Совместимость с Android: работа с фрагментами

Надеюсь, это поможет.

...