Barra de progreso en la aplicación Android

En este artículo, vamos a implementar una barra de progreso para mostrar proceso que se ejecuta en segundo plano en Android .

En el siguiente ejemplo, vamos a utilizar el App.ProgressDialog class para mostrar la barra de progreso en la pantalla. Aprovechamos el objeto de ProgressBar class uniendo nuestro contexto como éste: ProgressDialog (este) .

Para implementar esto en su programa, tendrá que class: android.app.ProgressDialog , android.widget.ProgressBar en su archivo de java.

A continuación, cree un archivo de diseño con un solo botón de la siguiente manera:

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click here to see the progress bar"
android:onClick="click"
android:id="@+id/button2"
android:layout_marginLeft="30dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginRight="30dp" />

El botón en el archivo de diseño se asigna a un método en el archivo de Java, la función es clic () . Asignamos en función de clic directamente como esto: androide: onclick = “clic” .

A continuación, vamos a hacer un nuevo objeto de progressBar y asignarla a las múltiples propiedades como el título, estilo y también decirle al progreso actual, que en este class se establece en 0.

Después de esto se crea una nuevo hilo y en cada 500ms aumentan la cantidad de progreso completado por esto: P.setProgress (JT)

1) Java Archive:

package com.example.hp.myapplication;
import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.ProgressBar;
public class MainActivity extends AppCompatActivity
{
ProgressDialog P;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void click(View view){
P=new ProgressDialog(this);
P.setMessage("Progress bar running");
P.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
P.setIndeterminate(true);
P.setProgress(0);
P.show();
final int T = 50;
Thread thread = new Thread() {
@Override
public void run() {
int JT = 0;
while(JT < T) {
try {
sleep(500);
JT += 3;
P.setProgress(JT);
}
catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
thread.start();
}
}

2) archivo XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout >:android="http://schemas.android.com/apk/res/android"
>:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.hp.myapplication.MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click here to see the progress bar"
android:onClick="click"
android:id="@+id/button2"
android:layout_marginLeft="30dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginRight="30dp" />
</RelativeLayout>

3) El archivo de manifiesto:

<?xml version="1.0" encoding="utf-8"?>
<manifest >:android="http://schemas.android.com/apk/res/android"
package="com.example.hp.myapplication">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

salida


Deja un comentario

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