studio progressbar personalizar indeterminate horizontal color bar android progress-bar

personalizar - progressbar android circle



Android: muestra el texto en el centro de la barra de progreso (5)

Eso es lo que funciono para mi:

<RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <ProgressBar android:id="@+id/progressBar" style="@android:style/Widget.ProgressBar.Horizontal" android:progressDrawable="@drawable/customprogressbar" android:layout_width="match_parent" android:layout_height="match_parent" android:max="100"/> <TextView android:id="@+id/progressBarinsideText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:gravity="center" /> </RelativeLayout>

Ya he hecho una barra de progreso horizontal y funciona perfectamente. Me gustaría mostrar una vista de texto o algo similar justo en el medio, mostrando una cuenta regresiva mientras se carga la barra. Tenga en cuenta que no es un diálogo de progreso, la barra de progreso reside dentro de una actividad y muestra un temporizador de cuenta regresiva. ¿Puede alguien ayudarme, cuál es la mejor manera de hacer esto y cómo puedo lograrlo?


Esto es lo que usé para mostrar el texto de progreso sobre un girador centrado en una vista web:

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <WebView android:id="@+id/help_webview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#F22" android:scrollbars="none" /> <ProgressBar android:id="@+id/progressBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerInParent="true" android:layout_centerVertical="true" /> <TextView android:id="@+id/progressBarMessage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Loading, please wait..." android:layout_centerInParent="true" android:layout_above="@id/progressBar" android:background="#00000000" /> </RelativeLayout>


Puede usar un FrameLayout para mostrar el TextView sobre el ProgressBar:

... <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <ProgressBar android:id="@+id/progress" style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_height="match_parent" android:progressDrawable="@drawable/progressbar" /> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" /> ... </RelativeLayout> </FrameLayout>


Fuente tutorial

En la actividad podemos mostrar y descartar la barra de progreso usando los siguientes métodos

// Method to show Progress bar private void showProgressDialogWithTitle(String substring) { progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); //Without this user can hide loader by tapping outside screen progressDialog.setCancelable(false); progressDialog.setMessage(substring); progressDialog.show(); } // Method to hide/ dismiss Progress bar private void hideProgressDialogWithTitle() { progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); progressDialog.dismiss(); }

Ver otros


Si su ProgressBar y TextView están dentro de un RelativeLayout , puede asignarle una identificación a ProgressBar y luego alinear TextView con la ProgressBar . A continuación, debe aparecer en la parte superior de la ProgressBar de ProgressBar . Asegúrese de que el fondo sea transparente para que pueda ver la ProgressBar

Por ejemplo:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <ProgressBar android:layout_width="match_parent" android:layout_height="match_parent" // other attributes android:id="@+id/PROGRESS_BAR" > <TextView android:background="#00000000" // transparent // other attributes android:layout_alignLeft="@id/PROGRESS_BAR" android:layout_alignTop="@id/PROGRESS_BAR" android:layout_alignRight="@id/PROGRESS_BAR" android:layout_alignBottom="@id/PROGRESS_BAR" > </RelativeLayout>