android - Webservice加载数据时如何显示Progressbar?

标签 android web-services progress-bar

我正在使用从网络服务获取 n 条记录的网络服务。我正在使用 WS Client 调用 web 服务。现在我想要一个进度条,显示 n 个数据中有多少已加载。有没有可能实现这一目标?我正在使用 AsyncTask 在后台调用 WS。

最佳答案

试试这样的 ,,这基本上显示了一个在异步任务运行时更新进度条的示例

  public class AndroidAsyncTaskProgressBar extends Activity {

 ProgressBar progressBar;
 Button buttonStartProgress;

 public class BackgroundAsyncTask extends
    AsyncTask<Void, Integer, Void> {

  int myProgress;

  @Override
  protected void onPostExecute(Void result) {
   // TODO Auto-generated method stub
   Toast.makeText(AndroidAsyncTaskProgressBar.this,
         "onPostExecute", Toast.LENGTH_LONG).show();
   buttonStartProgress.setClickable(true);
  }

  @Override
  protected void onPreExecute() {
   // TODO Auto-generated method stub
   Toast.makeText(AndroidAsyncTaskProgressBar.this,
         "onPreExecute", Toast.LENGTH_LONG).show();
   myProgress = 0;
  }

  @Override
  protected Void doInBackground(Void... params) {
   // TODO Auto-generated method stub
   while(myProgress<100){
    myProgress++;
    publishProgress(myProgress);
       SystemClock.sleep(100);
   }
   return null;
  }

  @Override
  protected void onProgressUpdate(Integer... values) {
   // TODO Auto-generated method stub
   progressBar.setProgress(values[0]);
  }

 }


 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);

     buttonStartProgress = (Button)findViewById(R.id.startprogress);
     progressBar = (ProgressBar)findViewById(R.id.progressbar_Horizontal);
     progressBar.setProgress(0);

     buttonStartProgress.setOnClickListener(new Button.OnClickListener(){

   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
    new BackgroundAsyncTask().execute();
    buttonStartProgress.setClickable(false);
   }});
 }
}

关于android - Webservice加载数据时如何显示Progressbar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10779254/

相关文章:

android - 如何缩放位图?

objective-c - Restkit Post总是会出现故障

java - CLIENT-CERT auth-method 可以与 tomcat 中的 JDBC 域一起使用吗?

c# - ProgressBar 作为 DataGridView 行的背景

Java/Android : Socket closed when offloading work to a thread pool

Android Tab教程问题

c# - 如何从网络服务返回多个字符串?

c# - 在 .NET 4.5 中并行运行 .exe 进程并更新进度条

windows-phone-7 - 我如何知道我的列表框已完全填充并显示在 WP7 的页面上

android - 使用 FFMPEG 播放音频