Pregunta

Esto solo sucede cuando se usa la biblioteca de compatibilidad para dispositivos anteriores a 3.0

Recibo un error que no puedo precisar. Tengo una actividad con un fragmento de lista y fragmento estándar. Es como el ejemplo proporcionado en la sección de desarrolladores de la Guía de desarrollo de Android.

Subclase de ListFragment (sin funciones anuladas)

public class ItemListFragment extends ListFragment

Actividad principal

public class ItemViewerActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.item_viewer);
    }
}

Diseño XML para MainActivity

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="horizontal">
  <fragment class="org.example.ItemListFragment"
    android:id="@+id/item_list_fragment"
    android:layout_width="0dp"
    android:layout_height="fill_parent"
    android:layout_weight="1" />
  <FrameLayout
    android:id="@+id/item_info_frame"
    android:layout_width="0dp"
    android:layout_height="fill_parent"
    android:layout_weight="1" />
</LinearLayout>

Mensaje de error de LogCat

Error/AndroidRuntime: causado por: java.lang.classcastException: org.example.itemListFragment no se puede emitir en android.app.fragment

¿Fue útil?

Solución

Después de un google serio, encontré un artículo que señalaba un pequeño tidbit. Al usar la biblioteca de compatibilidad, sus actividades que usan fragmentos deben extender la fragmentación de la fragmentación. Una vez que hice eso, el error no se presentó nuevamente.

Otros consejos

Para mí, el problema era que me había olvidado de cambiar el manifiesto. Después de la sugerencia del tutorial, convertí mi actividad en un fragmento e hice una actividad de conchas para llamarlo. Mi manifiesto todavía apuntaba a la clase de fragmentos que condujo a una excepción de clase.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top