我有一个搜索功能(使用 Web 服务),它需要一段时间才能将数据加载到我的膨胀布局中。我想显示ProgressBar
直到从 Web 服务中获取数据。这是一个很小的时间间隔,因此我不为此使用 a ProgressDialog
。我浏览了许多帖子和开发指南,但我无法找到在我的应用程序中使用它的方法。我的Spinner
布局中有一个。一旦我从微调器下拉列表中选择了一个项目,我就会将字符串传递给搜索函数,该函数会获取数据并将数据加载到膨胀的布局中。
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
Selection = spinner.getSelectedItem().toString();
search(Selection);
}
我按照开发指南中的说明创建了一个 ProgressBar 处理程序。
private ProgressBar mProgress = new ProgressBar(SearchActivity.this, null, android.R.attr.progressBarStyleSmall);
private int mProgressStatus = 0;
private Handler mHandler = new Handler();
并说这是一个用于显示的新线程ProgressBar
new Thread(new Runnable() {
public void run() {
while (mProgressStatus < 100) {
mProgressStatus = doWork();
// Update the progress bar
mHandler.post(new Runnable() {
public void run() {
mProgress.setProgress(mProgressStatus);
}
});
}
}
}).start();
如何跟踪我的搜索功能的进度以显示ProgressBar
?
感谢您阅读