在我的应用程序中,我正在插入自定义进度条。
问题是没有显示进度。在代码中我调用setProgress
时,条形图保留背景颜色。而在布局设置setProgress
中是否正常显示。
在插入自定义工具栏之前,它完美地运行了
以下是一些代码:
抽拉/ customprogressbar.xml
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Define the background properties like color etc -->
<item android:id="@android:id/background">
<shape>
<corners
android:radius="5dip" />
<gradient
android:startColor="#5c5c5b"
android:endColor="#9d9d9c"
android:centerY="1"
android:angle="270"
/>
</shape>
</item>
<!-- Define the progress properties like start color, end color etc -->
<item android:id="@android:id/progress">
<clip>
<shape>
<corners
android:radius="5dip" />
<gradient
android:startColor="#85040b"
android:endColor="#e30613"
android:centerY="1"
android:angle="270"
/>
</shape>
</clip>
</item>
</layer-list>
我看到进度条的布局
<ProgressBar
android:id="@+id/progressBar1"
style="@android:style/Widget.ProgressBar.Horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:max="100"
android:progress="50"
android:layout_alignTop="@+id/map"
android:progressDrawable="@drawable/customprogressbar"
android:visibility="visible" />
在代码中我打电话
progresbar.setProgress(progress);
设置进度
答案 0 :(得分:0)
我发现了错误。代码是正确的。但我打电话给#34; setProgress&#34;在&#34; if-else&#34;只在if状态。 这是正确的代码(关于asynctask的进度更新
if(i[3]==1){
SetMarker(coordOggetto, i[0] , tipo, nome, indirizzo);}
progresbar.setProgress(i[1]);
tv_completamento.setText(i[1]+"%");
}
感谢所有人的评论
答案 1 :(得分:0)
这是ProgressBar
progressBarHandler.post(new Runnable() {
public void run() {
bar.setProgress(progress);
}
});
可以解决你的问题