import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;
public class AsyncTaskActivity extends Activity {
private ProgressBar progress;
private TextView tv;
/** Called when the activity is first created. */
class MyAsyncTask extends AsyncTask<URL, Integer, String> {
@Override
protected void onPreExecute() {
progress = (ProgressBar) findViewById(R.id.pb1);
tv = (TextView) findViewById(R.id.tv1);
}
@Override
protected void onProgressUpdate(Integer... values) {
progress.setProgress(values[0]);
}
protected String doInBackground(URL... params) {
for (int i = 0; i < 100; i++) {
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
publishProgress(i + 1);
}
return "success";
}
@Override
protected void onPostExecute(String result) {
tv.setText(result);
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btn = (Button) findViewById(R.id.btn14_1);
btn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
MyAsyncTask asyncTask = new MyAsyncTask();
try {
asyncTask.execute(new URL("http://www.baidu.com"));
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
}
Android异步处理
最新推荐文章于 2024-07-21 21:22:17 发布