ProgressDialog in android

Trong bài viết này tôi sẽ đưa ra một một đoạn mã nhỏ để chúng ta làm giao diện có tương tác trực quan hơn với người dùng trên mobile và đối tượng hôm nay chúng ta đề cập tới là ProgressDialog, nó được sử dụng khi chúng ta muốn làm một công việc nào đó dưới background mà không muốn tạo giao diện cho người dùng có thể download một file nhạc chẳng hạn, nó chỉ có mục đích giúp người dùng biết họ đang thực hiện đến đâu của công việc, và để thực hành tốt với đối tượng này chúng ta sẽ sử dụng một Thread rất đơn giản không có quan hệ dữ liệu phức tạp.

Đầu tiên chúng ta có một file java đơn giản chỉ là đếm từ 0 đến 90.000 và in nó ra màn hình Logcat để theo dõi.

package android.showdialog;

package android.showdialog;

import android.util.Log;


public class staskBackground {
	
		private int i = 0;
		public void countNumber(){
			for (int i=0; i<90000; i++)
				Log.v("Count :", Integer.toString(i));
		}
}




//Tiếp đó là file Activity của chúng ta tất nhiên là nó sẽ được implements Một đối tượng Runnable, có như sau ;


package android.showdialog;

import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.Toast;

public class ProgressbarShowDialogActivity extends Activity implements Runnable{
    /** Called when the activity is first created. */
    private ProgressDialog showDialog;
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        showDialog = ProgressDialog.show(this, "Running..", "Tammao's Blog", true,
				false);
        Thread thread = new Thread(this);
        thread.start();

    }

	@Override
	public void run() {
		// TODO Auto-generated method stub
		staskBackground stask = new staskBackground();
		stask.countNumber();
		handler.sendEmptyMessage(0);
	}
	private Handler handler = new Handler(){
		@Override
		public void handleMessage(Message msg){
			showDialog.dismiss();
			Toast.makeText(getApplicationContext(), "Finish", Toast.LENGTH_LONG).show();
		}
	};
}

Khi các bạn run chương trình này thì sẽ có một Dialog được hiển thị và xem trong màn hình Logcat để xem Tag count của chúng ta hiển thị những gì, count = 89999 thì nó sẽ dừng lại và tắt Dialog. Ở những bài trước thì tối có viết một bài về Thread trong android bạn có thể xem lai Threading in android

Advertisements

2 thoughts on “ProgressDialog in android

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s