quiero seguir estos métodos:Cómo puede estilo de la ListView de un ListFragment
setListShown(true);
setListShownNoAnimation(true);
pero si uso
onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
para inflar el Fragment
con un diseño personalizado de estilo, los métodos anteriores se no se utilizará, y muestre esta excepción:
07-30 20:17:46.937: E/AndroidRuntime(1374): Caused by: java.lang.IllegalStateException: Can't be used with a custom content view
07-30 20:17:46.937: E/AndroidRuntime(1374): at android.support.v4.app.ListFragment.setListShown(ListFragment.java:282)
07-30 20:17:46.937: E/AndroidRuntime(1374): at android.support.v4.app.ListFragment.setListShown(ListFragment.java:258)
Entonces, ¿qué solución posible puede ser?
EDIT:
El Fragment
utiliza un cargador para poblar su ListView
a partir de una base de datos. Así que esa es la razón por la que quiero mantener esos métodos, se necesitan aquí:
public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
mAdapter.swapCursor(data);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
}
La solución más fácil sería hacer mi propio código basado en la fuente ListFragment
, una también agregar el widget de progreso a la disposición para mostrar el mismo efecto Por ahora, borraré esas líneas como me han dicho. Si hago la modificación, la pegaré aquí.
Lo que están inflando XML? – Estel
Es solo una distribución lineal con la vista de lista, pasándoles el atributo de estilo. – giorgiline