Quiero tener un ProgressDialog
con barra de progreso determinada en lugar de spinner predeterminado. Parece ser fácil: ProgressDialog
tiene el método setIndeterminate
, y el método show
acepta un valor booleano para indicar indeterminación. ¡Pero de esta manera no funcionan para mí! El diálogo sigue siendo indeterminado con un spinner. ¿Cómo cambiar el comportamiento?ProgressDialog Determinado en Android
Respuesta
Usted necesita llamar:
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
Mira la guía oficial dev Showing a progress bar con el código fuente del ejemplo adjunto a esa sección.
ProgressDialog dialog = new ProgressDialog(this);
dialog.setMessage("Registering. Please wait...");
dialog.setIndeterminate(true);
dialog.setCancelable(false);
dialog.show();
Try this code should work fine...
Creo que me malentendió: necesito determinada barra de progreso, que muestra cuánto del proceso se completa. – aplavin
Oh Sorry.. Try this
1) Create a layout file with below code
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:id="@+id/RelativeLayout_DownloadProgress" android:paddingLeft="20dp" android:paddingBottom="20dp" android:paddingRight="10dp" android:paddingTop="20dp">
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/downloading_video_tv" android:text="@string/downloading_video" android:textStyle="bold" android:textColor="@color/COLOR_WHITE"></TextView>
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/download_progress_tv" android:text="@string/zero_percent" android:layout_below="@+id/downloading_video_tv" android:textColor="@color/COLOR_WHITE"></TextView>
<Button
android:id="@+id/download_cancel_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/downloading_video_tv"
android:text="@string/Cancel"
android:textColor="@color/COLOR_CANCEL_BTN" android:layout_marginLeft="5dp">
</Button>
<ProgressBar
android:id="@+id/download_progressbar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="13dp"
android:layout_below="@id/download_progress_tv"
android:layout_toLeftOf="@id/download_cancel_btn"
android:indeterminateOnly="false"
android:max="100"
android:progressDrawable="@drawable/dwnld_progress" >
</ProgressBar>
</RelativeLayout>
2) In your code do the following
i) in oncreate() method add the following lines..
//Download progress layout inflate
RelativeLayout relativelayout_DownloadProgress = (RelativeLayout)_inflater.inflate(R.layout.downloadprogress, null);
TextView downloadProgress_PercentageTV = (TextView)relativelayout_DownloadProgress.findViewById(R.id.download_progress_tv);
Button downloadProgress_CancelBtn = (Button)relativelayout_DownloadProgress.findViewById(R.id.download_cancel_btn);
ProgressBar download_progressBar = (ProgressBar)relativelayout_DownloadProgress.findViewById(R.id.download_progressbar);
downloadProgress_CancelBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
dismissDialog(0);
}
});
ii) //Creating Dialogs i.e., below onCreate() method
protected Dialog onCreateDialog(int id) {
switch (id) {
case 0:
return new AlertDialog.Builder(_activity)
.setView(relativelayout_DownloadProgress)
.create();
}//switch end
return null;
}//onCreateDialog()
iii) on any click event add the following lines.
showDialog(0);download_progressBar.setProgress(0);
Sorry i know its too long code but its working code in application...Try it might need modifications like variables must be declared in class scope.
si el código anterior fue útil para usted .... – Ishu
Este código usa ProgressBar, no ProgressDialog. Espero que sea posible lograr ese comportamiento con ProgressDialog, y solo si no lo es, hará lo que sugirió. – aplavin
Sí, usa ProgressBar, pero esa vista se muestra como un cuadro de diálogo, por lo que no debe haber problemas, y el código de trabajo en mi aplicación actual funciona igual. – Ishu
- 1. Desarreglo de ProgressDialog en Android
- 2. Android: ProgressDialog no muestra
- 3. Mostrar ProgressDialog Android
- 4. Android ProgressDialog no gira
- 5. Android ProgressDialog con setContentView
- 6. Progressdialog lenta para mostrar en Android
- 7. ¿Qué significa "indeterminado" en ProgressDialog?
- 8. Unidad de progreso en ProgressDialog
- 9. progressDialog en AsyncTask
- 10. Android: ProgressDialog no aparece en la clase de adaptador
- 11. Android: AsyncTask ProgressDialog no se abrirá en ActivityGroup
- 12. Android: ¿Cómo cambiar el color del texto de ProgressDialog?
- 13. Android - Detener descargas de archivos grandes - usando async/progressdialog
- 14. Transparente, sin bordes ProgressDialog
- 15. ProgressDialog no aparece
- 16. ¿Por qué mi ProgressDialog sale cuando hago clic en Actividad?
- 17. ProgressDialog no funciona en AsyncTask externo
- 18. ProgressDialog - cómo eliminar los números
- 19. ProgressDialog y AlertDialog causa ventana
- 20. Cambiar el estilo de ProgressDialog
- 21. ¿Cómo se usa AsyncTask para mostrar un ProgressDialog mientras se trabaja en segundo plano en Android?
- 22. Impedir que se desestime ProgressDialog al hacer clic en el botón de búsqueda (Android)
- 23. ¿Cómo se muestra ProgressDialog usando el Fragmento
- 24. ProgressDialog: cómo evitar la ventana filtrada
- 25. ProgressDialog no quiere actualizar el mensaje
- 26. Android ASync tarea ProgressDialog no se muestra hasta que termina el hilo de fondo
- 27. insertar en array en un lugar determinado
- 28. ¿Cómo git diff en un determinado directorio?
- 29. Configuración de Hanoi en un movimiento determinado
- 30. Quiero una barra de progreso pero obtengo un spinner progressdialog
El ejemplo en este enlace realmente ayudó, gracias) – aplavin