【发布时间】:2017-04-24 04:59:03
【问题描述】:
我在 viewpager 页面 0 中有一个进度条。 这是进度条:
<ProgressBar
android:id="@+id/mytask_today_progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="113dp"
android:layout_height="113dp"
android:indeterminate="false"
android:max="100"
android:progress="0"
android:progressDrawable="@drawable/custom_progress_small"
android:secondaryProgress="0" />
现在,当该页面加载时,我将进度条设置为 0,我得到如下完美的屏幕:
这是我使用的代码:
mainActivity.sout("per_mytask_today : "+per_mytask_today);
mytask_today_progressBar.setProgress(1);
mainActivity.sout("mytask_today_progressBar.getprogress() : "+mytask_today_progressBar.getProgress());
mytask_week_progressBar.setProgress(0);
mytask_today_progresstxt.setText(1+"");
mytask_week_progresstxt.setText(0+"");
当我像这样交换视图寻呼机的页面并返回同一页面时,设置为 0 的进度条已更改。像这样:
如您所见,进度条设置为 1(或者实际上是 1-100 之间的任何其他值)不会改变,只会改变 0。
这是我为此使用的可绘制对象(这是否会造成问题):
<?xml version="1.0" encoding="utf-8"?>
<item>
<!-- Our second ring -->
<shape android:shape="ring"
android:useLevel="true"
android:innerRadius="40dp"
android:thicknessRatio="8">
<solid android:color="@color/colorPrimaryDark"> </solid>
</shape>
</item>
</layer-list>
【问题讨论】:
-
我认为您的最后一行代码总是使文本成为
0,而实际值是什么并不重要。mytask_week_progresstxt.setText(0+"")。因此,基本上您需要将.setText更改为任何价值,而不是使其成为静态。 -
否,但它适用于 1-100 的值。只有 0 才引起问题
标签: android android-progressbar