ClassCastException с findFragmentById - PullRequest
       0

ClassCastException с findFragmentById

7 голосов
/ 18 ноября 2011

Я пытаюсь получить определенный фрагмент с:

RohwareFragmentMatlist fragment =    (RohwareFragmentMatlist)getFragmentManager().findFragmentById(R.id.lagerfragment);

Но я получаю ошибку от затмения с этим сообщением:

Невозможно привести от фрагмента к списку RohwareFragmentMatlist

Активность начинается с:

public class RohwareActionBar extends FragmentActivity {...

Список RohwareFragmentMatlist определен следующим образом:

public class RohwareFragmentMatlist extends ListFragment
        implements LoaderManager.LoaderCallbacks<Cursor>{...

Фрагмент определяется следующим образом:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent" 
android:layout_height="match_parent">

<fragment
xmlns:android="http://schemas.android.com/apk/res/android"
android:name="de.ypssoft.RohwareFragmentMatlist"
android:layout_weight="1"
android:layout_width="0px" 
android:layout_height="match_parent"
android:id="@+id/lagerfragment" 
android:layout_margin="5dip" 
android:layout_marginLeft="10dip"
>
</fragment>
<FrameLayout 
android:id="@+id/details" 
android:layout_weight="3"
android:layout_width="0px" 
android:layout_height="match_parent"
 android:background="?android:attr/detailsElementBackground" /> 

</LinearLayout>

Разве не работает получение фрагмента через "getFragmentById" с использованием ListFragment?

1 Ответ

33 голосов
/ 18 ноября 2011

Я нашел решение здесь .Поскольку я использую пакет совместимости v4, я должен использовать

RohwareFragmentMatlist фрагмент = (RohwareFragmentMatlist) getSupportFragmentManager (). FindFragmentById (R.id.lagerfragment);

;из

RohwareFragmentMatlist фрагмент = (RohwareFragmentMatlist) getFragmentManager (). findFragmentById (R.id.lagerfragment);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...