Search This Blog

Wednesday, March 23, 2016

ProgressDialog - VI DU VE PROGRESSDIALOG

- File ACTYVITY_MAIN.XML :

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"    
xmlns:tools="http://schemas.android.com/tools"    
android:layout_width="match_parent"    
android:layout_height="match_parent"    
tools:context=".MainActivity" 
>

    <Button        
android:id="@+id/button1"        
android:layout_width="match_parent"        
android:layout_height="wrap_content"        
android:text="ProgressDialog example"        
android:layout_alignParentTop="true"        
android:layout_alignParentLeft="true"        
android:layout_alignParentStart="true"        
android:layout_marginTop="182dp" />

</RelativeLayout>

- File main.java :

public class ManHinhChinh extends Activity {
    Button button;
    ProgressDialog progressDoalog;

    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_man_hinh_chinh);
        button = (Button) findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener() {
            @Override            public void onClick(View v) {
                progressDoalog = new ProgressDialog(ManHinhChinh.this);
                progressDoalog.setMax(100);
                progressDoalog.setMessage("Đang Tải....");
                progressDoalog.setTitle("Download");
                progressDoalog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
                progressDoalog.show();
                new Thread(new Runnable() {
                    @Override                    
                    public void run() {
                        try {
                            while (progressDoalog.getProgress() <= progressDoalog.getMax()) {
                                Thread.sleep(200);
                                handle.sendMessage(handle.obtainMessage());
                                if (progressDoalog.getProgress() == progressDoalog.getMax()) {
                                    progressDoalog.dismiss();
                                }
                            }
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                }).start();
            }

            Handler handle = new Handler() {
                @Override                public void handleMessage(Message msg) {
                    super.handleMessage(msg);
                    progressDoalog.incrementProgressBy(1);
                }
            };
        });
    }


}



No comments:

Post a Comment