【发布时间】:2017-09-10 11:09:20
【问题描述】:
我正在创建动态进度条宽度,但它现在可以正常显示。当我在 xml 中设置宽度(272 dp)时,它显示正确,但我以编程方式设置相同的宽度,它没有显示正确的宽度。
XML:
<ProgressBar
android:id="@+id/progress_bar_sleep"
style="@style/SleepProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/text_size_16dp"
android:layout_marginTop="@dimen/default_gap" />
代码:
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) progressBarList.get(2).getLayoutParams();
params.width = 272;
progressBarList.get(2).setLayoutParams(params);
progressBarList.get(2).invalidate();
【问题讨论】:
-
因为 params.width=272 以像素为单位。并在 xml 中设置 dp 值
-
@DivyeshPatel 我该怎么做才能得到准确的结果?
标签: android android-progressbar