Skip to main content

Progressbar example in android

Progress bar

In android, progress bar can be used to tell the user the task takes longer time to finish. Progress  bar displays a bar which represent how far the operations has progressed. Progress bar can be made indeterminate. In indeterminate mode, progress bar shows a cyclic animation without indication progress.

In this tutorial, I’ll show how to display a progress bar 

package com.example;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ProgressBar;
import android.widget.TextView;

public class ProgressbarExamplActivity extends Activity {
      private ProgressBar bar;
      private TextView txt;
      protected boolean isRunning;

      /** Called when the activity is first created. */
      @Override
      public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            bar=(ProgressBar)findViewById(R.id.progressBar1);
            txt=(TextView)findViewById(R.id.text);
            new Thread(new Runnable() {
                 
                  public void run() {
                        for (int i = 0; i < 20; i++) {
                              try {
                                    Thread.sleep(1000);
                                    handler.sendMessage(handler.obtainMessage());
                              } catch (InterruptedException e) {
                                    // TODO Auto-generated catch block
                                    e.printStackTrace();
                              }
                        }
                        onDestroy();
                       
                  }
            }).start();

      }

     
      Handler handler=new Handler() {
            private int total;
            @Override
            public void handleMessage(Message msg) {
                  total=total+5;
                  String perc=String.valueOf(total).toString();
                  txt.setText(perc+"% completed");
                  bar.incrementProgressBy(5);
            }
      };
      protected void onDestroy() {

            super.onDestroy();
            finish();
      };

}


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView 
    android:layout_width="fill_parent"
    android:id="@+id/text"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
<ProgressBar
      style="?android:attr/progressBarStyleLarge"
      android:layout_width="wrap_content"
      android:id="@+id/progressBar1"
      android:layout_height="wrap_content">
</ProgressBar>
</LinearLayout>


Horizontal Progressbar Example

package com.example;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ProgressBar;
import android.widget.TextView;

public class ProgressbarExamplActivity extends Activity {
      private ProgressBar bar;
      private TextView txt;
      protected boolean isRunning;

      /** Called when the activity is first created. */
      @Override
      public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            bar=(ProgressBar)findViewById(R.id.progressBar2);
            txt=(TextView)findViewById(R.id.text);
            new Thread(new Runnable() {
                 
                  public void run() {
                        for (int i = 0; i < 20; i++) {
                              try {
                                    Thread.sleep(1000);
                                    handler.sendMessage(handler.obtainMessage());
                              } catch (InterruptedException e) {
                                    // TODO Auto-generated catch block
                                    e.printStackTrace();
                              }
                        }
                        onDestroy();
                       
                  }
            }).start();

      }

     
      Handler handler=new Handler() {
            private int total;
            @Override
            public void handleMessage(Message msg) {
                  total=total+5;
                  String perc=String.valueOf(total).toString();
                  txt.setText(perc+"% completed");
                  bar.incrementProgressBy(5);
            }
      };
      protected void onDestroy() {

            super.onDestroy();
            finish();
      };

}


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView 
    android:layout_width="fill_parent"
    android:id="@+id/text"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
<ProgressBar
android:layout_height="wrap_content"
android:id="@+id/progressBar2"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent">
</ProgressBar>
</LinearLayout>


Result

Progress Dialog Example

package com.example;

import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;

public class ProgressBarExample2Activity extends Activity {
    private ProgressDialog progressbar;

               /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        progressbar=new ProgressDialog(this);
        progressbar.setMessage("File downloading ...");
        progressbar.show();
       
        new Thread(new Runnable() {
                                              
                                               public void run() {
                                                               try {
                                                                               Thread.sleep(5000);  progressbar.cancel();
                                                                              
                                                               } catch (InterruptedException e) {
                                                                               // TODO Auto-generated catch block
                                                                               e.printStackTrace();
                                                               }
                                                              
                                               }
                               }).start();
    
    }
}

Result
See more

Comments

Post a Comment

Popular posts from this blog

Capture image without surface view as background service in android

Capture image without user knowledge in android/Capture image as background service in android/Take photo without preview in android/ Camera without preview in android  package com.example.picture; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.app.Service; import android.content.Context; import android.content.Intent; import android.hardware.Camera; import android.hardware.Camera.Parameters; import android.media.AudioManager; import android.os.IBinder; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; public class CameraService extends Service {       //Camera variables       //a surface holder       private SurfaceHolder sHolder ;        //a variable to control the camera       private Camera mCamera ;   ...

Custom Spinner in Android

Custom Spinner in Android/Spinner using custom adapter/spinner with icon and text  In this tutorial, i'll show you to customizing spinner in different methods.  To change the normal display of spinner view, add background image using the code " android:background="@drawable/myspinner_background" in the xml. You can also make it customizable by setting up an xml file in drawable folder Custom display with icon in the spinner   main.xml <? xml version = "1.0" encoding = "utf-8" ?> < LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"     android:orientation = "vertical"     android:layout_width = "fill_parent"     android:layout_height = "fill_parent"     >     < Spinner     android:drawSelectorOnTop = "true"     android:id = "@+id/spinner1"     android:layout_width = "match_parent"     and...

Coroutine- A complete tutorial

 What are coroutines? To know about coroutine, first you need to know about asynchronous programming, thread and multithreading concept. What is a thread? Thread describes in which context the function or sequence of instructions should be executed. So, every block of code or functions runs in a thread, right? Also, you can load multiple threads to perform different block of codes  How to start a thread? Thread thread = new Thread(){     public void run(){       System.out.println("This is a thread");     }   }     thread.start(); So when coming to android, before learning about coroutines we need to discuss some scenarios. Normally how an app works when user launch an application. When user launchers the application, a main thread is created. This thread is intended to do small operations like button clicks, UI interaction , small mathematical operations. We cant perform long running op...