Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Ocultar el indicador "Cargando …" al implementar un ListFragment

He creado la exhibición usando Fragments , que se está poblando con los datos sacados del Internet. Mientras que el código en sí funciona como se esperaba sin ningún problema, uno de los Fragmentos (implementado como ListFragment ) muestra un indicador de progreso indeterminado dentro del fragmento, que está sesgado hacia un lado. Quiero quitar el indicador y utilizar un ProgressDialog diferente que implemente como el indicador en su lugar.

Haciendo algunas investigaciones, he descubierto la función setListShownNoAnimation() (documentada aquí ) en la clase ListFragment , pero los siguientes intentos no funcionaron:

  • Obtenga el nivel de batería sólo una vez con Android SDK
  • Tinting Checkbox en pre v21
  • Preguntas relacionadas con la seguridad y el diseño de la facturación en la aplicación
  • Galería de Android no puede combinar título personalizado
  • Android Studio AVD, CRASH, GRADLE PROBLEMAS, no se puede iniciar
  • Implementación de tres acciones dentro de una única opción de menú en Android
    • Llamando setListShownNoAnimation () en el fragmento onActivityCreated()
    • Llamándolo en la actividad onCreate la actividad onCreate
    • Llamándolo en el fragmento onCreateView() (esto causó una IllegalStateException )

    ¿Cómo puedo eliminar el indicador de progreso del fragmento?

  • Fundamentos de Android Fragments: ¿por qué? ¿Es esto conceptualmente erróneo?
  • ¿Cómo obtener una identificación de recurso con un nombre de recurso conocido?
  • Android DisplayMetrics devuelve un tamaño de pantalla incorrecto en píxeles en ICS
  • Phonegap Cross-domain AJAX POST La solicitud no funciona en Android
  • El teclado en pantalla de Android se dispara automáticamente
  • Pinch Zoom ListView Android
  • 3 Solutions collect form web for “Ocultar el indicador "Cargando …" al implementar un ListFragment”

    La forma correcta de hacerlo es llamar a:

     setListShown(true); 

    Cuando necesite que el ProgressBar esté oculto y muestre el ListView. Llame a esto cuando termine de obtener los datos en segundo plano y esté listo para mostrar la lista.

    Esta solución no puede ser el mejor método para solucionar esto, pero funciona bien:

    Lo que hice fue hacer que el Fragmento no se mostrara en absoluto cuando lo declaré en el archivo layout.xml:

     <fragment class="com.example.MyListFragment" android:id="@+id/frag_list" android:layout_width="0dp" android:layout_height="match_parent" android:visibility="gone" /> 

    Después de que los datos hayan sido descargados y procesados, entonces mostraría el Fragmento usando un FragmentTransaction:

     FragmentManager fm = getFragmentManager(); Fragment frag = fm.findFragmentById(R.id.frag_list); FragmentTransaction ft = fm.beginTransaction(); ft.show(frag); ft.commit(); 

    Si hay una mejor manera de resolver este problema, estoy abierto a sugerencias.

     @Override public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) { adapter.swapCursor(cursor); if(isResumed()) { setListShown(true); } else { setListShownNoAnimation(true); } } 

    Pero usted tiene que setListShown(false) donde se establece el ListAdapter . Esto funciona bien.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.