Android Progressbar微调器未旋转
谁能告诉我为什么进度条轮不旋转。。。我正在尝试在从web服务器下载数据时放置进度条到目前为止一切正常…我可以在下载数据时设置进度条,但问题是进度条微调器没有旋转…下面是我的进度条代码:Android Progressbar微调器未旋转,android,progress-bar,Android,Progress Bar,谁能告诉我为什么进度条轮不旋转。。。我正在尝试在从web服务器下载数据时放置进度条到目前为止一切正常…我可以在下载数据时设置进度条,但问题是进度条微调器没有旋转…下面是我的进度条代码: <Progressbar android:id="@+id/xPBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInPare
<Progressbar
android:id="@+id/xPBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
style="@android:style/Widget.ProgressBar.Inverse"/>
谢谢…您可能需要将其放入一个文件夹中。如果您试图将进度条放在主UI线程中,那么如果您在后台执行其他操作(如所述),它将不会移动。通过调用 汉德勒邮报(右) 您不是在新线程中运行runnable,而是在消息队列中发布它-这意味着在主UI线程中。这会导致应用程序在下载数据时冻结 您应该运行AsyncTask或新线程。例如,在Runnable r的末尾放上 Runnable r=新的Runnable(){ } 然后像这样运行Runnable r: 新线程(r.start() 当然,使用AsyncTask并使用其onPreExecute和onPostExecute,它会更加优雅 问候,
Dan是否正在下载主线程上的数据。所有http内容都需要在单独的线程上完成。如果你正在下载主线程中的数据,你会阻塞ui,这就是你的progressbar可见但不旋转的原因。这些都是猜测,请发布代码显示你是如何更新的。嘿,谢谢,它现在起作用了……谢谢你,现在我的微调器像风扇一样旋转……哇……哈哈……@Danail。请帮我做这件事
public void downloadAlerts() {
mPBar.setVisibility(ProgressBar.VISIBLE);
Runnable r = new Runnable() {
@Override
public void run() {
if (checkNetworkStatus(getApplicationContext()) == true) {
String alert = con.execute(ALERTS_URL
);
AlertsParser parser = new AlertsParser();
parser.parseJson(alert);
startActivity(new Intent(getApplicationContext(), Alerts.class));
onSuccessDownload();
} else if (checkNetworkStatus(getApplicationContext()) == false) {
onFailureDownload();
}
}
};
mHandler.post(r);
}
@Override
public void run() {
.......
context.runOnUiThread(new Runnable() {
@Override
public void run() {
hideProgressOnSuccess_andShowData();
}
});
}