我试图像这样在ListView中显示项目:
a. Name1
80.33 ====== 60%
b. Name2
101.22 ======= 70%
c. Name3
55.22 === 30%
d. Name4
140.11 ========== 100%
“图形”应为纯色线条,但必须有100%的整个宽度,并且它应占据可用的整个宽度,最左边的值和最右边的百分比除外。相对于集合中的最低值,百分比也更高。
无论如何,我已经尝试过使用带有ProgressBar的FrameLayout,这似乎不合适,而且我无法按我想要的方式进行布局。我正在考虑将1px彩色图像拉伸到所需的百分比,然后其余部分将1px深色图像拉伸。
有任何想法吗?谢谢!
编辑:
好的进度,但是有一个新问题:
这是我在布局中所做的:
<View
android:id="@+id/pr_bar_1"
android:layout_width="30dip"
android:layout_height="4dip"
android:layout_gravity="center_vertical"
android:background="#ffffff" />
<View
android:id="@+id/pr_bar_2"
android:layout_width="70dip"
android:layout_height="4dip"
android:layout_gravity="center_vertical"
android:background="#333333" />
看起来就像我想要的!但是...我现在似乎无法动态设置宽度。 View类没有
setLayoutWidth(int dip)
方法。如果我能做到,那我就完成了。有任何想法吗?谢谢! 最佳答案
据我了解,您需要对得分百分比显示暗线。如果我错了,让我纠正。为此,您可以尝试以下操作:
您可以在1个水平LinearLayout父对象下使用2个LinearLayout。将父布局的权重设置为100。第一个LinearLayout左边是深色图像,第二个是浅色图像。然后根据百分比设置左子元素的权重,然后将剩余的百分比赋给右LinearLayout
回答您的编辑问题:
LayoutParams
params=view_instan.getLayoutParams();
params.width=yourWidth;
view_instan.setLayoutParams(params);
关于android - Android静态百分比栏 View -不是进度栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25353057/