sav*_*avy 5 android progress-bar
我在从服务器检索数据时显示进度条,在从服务器检索数据后在图表上显示该数据,但在图表上绘制该数据时,我的进度条冻结了有没有人知道为什么会这样...... ..
提前致谢...
private ProgressDialog pd;
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
Toast.makeText(context, "Please Wait...", Toast.LENGTH_LONG).show();
Thread t = new Thread(new Runnable() {
@Override
public void run() {
functionDrawMyData();/*in this function i am accessing activity view and drawing data on that view at time of drawing my Progress bar Freezes */
}
});
runOnUiThread(t);
pd.dismiss();
}
};
Run Code Online (Sandbox Code Playgroud)
我正在使用的这个处理程序在检索数据完成后调用,单击按钮我正在获取数据并显示进度条
ImageButton myButton = (ImageButton) findViewById(R.id.myBtn);
pair1ChartButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
pd = ProgressDialog.show(v.getContext(),"Please wait...","Retrieving data ...",true,
true,
new DialogInterface.OnCancelListener(){
@Override
public void onCancel(DialogInterface dialog) {
}
});
Thread t = new Thread(new Runnable() {
@Override
public void run() {
getDataFromServer();//calling function to get data from server
handler.sendEmptyMessage(0);
}
});
t.start();
}
});
Run Code Online (Sandbox Code Playgroud)
这是因为您甚至在关闭或关闭对话框之前就开始更新 UI。这就是你的progressDialog冻结的原因。
所以像这样改变你的代码,
pd.dismiss();
runOnUiThread(t);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12024 次 |
| 最近记录: |