Saltar al contenido

Uso de Android ProgressDialog personalizado

Solución:

Esta respuesta no aborda el problema indicado en la pregunta, pero al buscar cómo implementar un cuadro de diálogo de progreso personalizado, este es el único enlace que apunta a SO. Dicho esto, encontré un cuadro de diálogo de progreso personalizado genial y fácil de usar por cierto Maksym Dybarskyi en este enlace.

Todo el crédito es para el creador, no para mí.

Todo lo que necesita hacer es agregar esto a sus dependencias:

dependencies {
...
   compile 'com.github.d-max:spots-dialog:[email protected]'
}

Y luego el estilo personalizado:

<style name="Custom" parent="android:Theme.DeviceDefault.Dialog">
    <item name="DialogTitleAppearance">@android:style/TextAppearance.Medium</item>
    <item name="DialogTitleText">Please Wait</item>
    <item name="DialogSpotColor">@android:color/holo_orange_dark</item>
    <item name="DialogSpotCount">8</item>
</style>

Finalmente, en tu código haz esto:

private AlertDialog progressDialog;
progressDialog = new SpotsDialog(mContext, R.style.Custom);

//Am using it in an AsyncTask. So in  my onPreExecute, I do this:
public void onPreExecute() {
  super.onPreExecute();
  progressDialog.show();
  ...
 }

//dismiss in onPostExecute
public void onPostExecute(){
   progressDialog.dismiss();
 } 

Resultado:

ingrese la descripción de la imagen aquí

Los puntos amarillos se mueven de izquierda a derecha y puede cambiar el número de puntos en los estilos.

Sé que llego bastante tarde para responder pero responderé de cualquier manera

Dialog dialog = new  Dialog(this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.dialog_login);
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));

Estoy usando personalizado ProgressDialog en mi aplicación. Para eso tenemos que seguir algunos pasos que son los siguientes.

paso 1
Crea un diseño xml custom_progress.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:padding="@dimen/dp_size_10"
    android:layout_height="match_parent">
<ProgressBar
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:indeterminateTint="@color/colorPrimary"
    android:layout_centerInParent="true"/>
</RelativeLayout>

paso 2
Cree un archivo java para este cuadro de diálogo personalizado.

package com.example.customeprogress;
import android.app.Dialog;
import android.content.Context;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.WindowManager;

public class CustomProgressDialogue extends Dialog {
    public CustomProgressDialogue(Context context) {
        super(context);

        WindowManager.LayoutParams wlmp = getWindow().getAttributes();

        wlmp.gravity = Gravity.CENTER_HORIZONTAL;
        getWindow().setAttributes(wlmp);
        setTitle(null);
        setCancelable(false);
        setOnCancelListener(null);
        View view = LayoutInflater.from(context).inflate(
                R.layout.custom_progress, null);
        setContentView(view);
    }
}

paso 3
Cree un objeto de esta clase personalizada en su clase de actividad java e inicialícelo de la siguiente manera, use el objeto para show() o dismiss()

Objeto CustomProgressDialogue = new CustomProgressDialogue (esto);

y muestre este diálogo usando.

object.show (); y lo descartó usando object.dismiss ();

Resultado de la salida. ver, poner aquí

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *