我試圖表現出水平進度條上這樣 水平進度條不更新其狀態
在這裏我的活動「不ProgressDialog」是我的XML文件中包含
<ProgressBar
android:id="@+id/pdialog"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:indeterminate="true"
/>
我試圖通過設置pdialog.setProgress()使用AsyncTask Class來更新其狀態,但它沒有顯示任何進度,它可以與progressdialog一起使用,但不能與水平進度條一起使用。
public class MainActivity extends Activity {
private SQLiteDatabase db;
private Cursor cursor;
private ProgressBar pdialog;
private ImageButton btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.start);
btn = (ImageButton) findViewById(R.id.startbtn);
pbar = (ProgressBar) findViewById(R.id.progressBar1);
pdialog = (ProgressBar) findViewById(R.id.pdialog);
pdialog.setMax(100);
pdialog.setProgress(20);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pdialog.setVisibility(View.VISIBLE);
new DownloadFilesTask().execute();
}
});
}
private class DownloadFilesTask extends AsyncTask<Void, Integer, Integer> {
int load = 1;
protected Integer doInBackground(Void... params) {
try {
load = 10 * i;
MainActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
pdialog.setProgress(load);
}
});
}
} catch (Exception e) {
}
}
protected void onProgressUpdate(Integer... progress) {
if (progress[0] == 100) {
pdialog.setVisibility(View.INVISIBLE);
}
}
protected void onPostExecute(Integer params) {
}
}
}
你在哪裏增加......? – 2013-03-07 06:54:08
我有很長的代碼,所以我只是把它縮短,我在我的doinbackground()增加了[i],但它沒有更新所有的 – 2013-03-07 06:57:47
試試這個任何http://eagle.phys.utk.edu/guidry /android/progressBarExample.html和http://blog.webagesolutions.com/archives/170,並檢查我的值是否正確遞增或不遞增 – itsrajesh4uguys 2013-03-07 06:59:33