1. 使用 AsyncTask 实现进度条
package com.test.network; import android.os.AsyncTask; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.ProgressBar; import android.widget.TextView; public class AsyncActivity extends AppCompatActivity { private ProgressBar progressBar; TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_async); progressBar = (ProgressBar) findViewById(R.id.progressBar); textView = (TextView) findViewById(R.id.textView); new MyTask().execute(); } class MyTask extends AsyncTask<String, Integer, String> { protected void onPreExecute() { progressBar.setVisibility(View.VISIBLE); } //执行耗时操作 @Override protected String doInBackground(String... params) { for (int i = 1; i <= 100; i++) { try { Thread.sleep(30); } catch (InterruptedException e) { e.printStackTrace(); } publishProgress(i); } return "success"; } protected void onProgressUpdate(Integer... values) { progressBar.setProgress(values[0]); } protected void onPostExecute(String result) { textView.setText(result); progressBar.setVisibility(View.INVISIBLE); } } }