public class MyActivity extends Activity { |
|
private ProgressBar mProgress; |
|
private int mProgressStatus = 0; |
|
private Handler mHandler = new Handler(); |
|
protected void onCreate(Bundle icicle) { |
|
super.onCreate(icicle); |
|
setContentView(R.layout.progressbar_activity); |
|
mProgress = (ProgressBar) findViewById(R.id.progress_bar); |
|
|
|
new Thread(new Runnable() { |
|
public void run() { |
|
while (mProgressStatus < 100) { |
|
mProgressStatus += 10; |
|
|
|
mHandler.post(new Runnable() { |
|
public void run() { |
|
|
|
|
|
mProgress.setProgress(mProgressStatus); |
|
} |
|
}); |
|
} |
|
} |
|
}).start(); |
|
} |
|
} |
package com.androday.test;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.widget.ProgressBar;
public class MainActivity extends Activity {
private ProgressBar mProgress;
private int mProgressStatus = 0;
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.progressbar_activity);
mProgress = (ProgressBar) findViewById(R.id.ProgressBar01);
mProgress.setProgress(mProgressStatus);
new Thread(new Runnable() {
public void run() {
while (mProgressStatus <= 100) {
mProgressStatus += 10;
mProgress.setProgress(mProgressStatus);
try {
/*
* 어떤 할일
*/
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (mProgressStatus > 100)
{
runOnUiThread(new Runnable() {
public void run() {
AlertDialog ad = new AlertDialog.Builder(MainActivity.this).setPositiveButton("Ok", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
}).setTitle("로딩 완료").setMessage("환영합니다.").create();
ad.show();
}
});
}
}
}
}).start();
}
}
밤을 새셧다고 하니 올려봅니다. . 가족과 건강을 챙기시지요 . .
최대한 같은 구조로 가져가려고 하였습니다. .
핸들러를 통한 포스트메세지나 여기서 쓰인 runOnUiThread 나 다 같은 얘기입니다.
MAIN UI는 반드시 핸들러를 통해서 접근해야 합니다. .
다른 사람들을 위해 글은 지우지 말아주세요.



