android ProgressBar正在改变父LinearLayout的高度维度

时间:2017-04-01 06:14:02

标签: android progress-bar android-linearlayout relativelayout

我在LinearLayout中有一堆RelativeLayout。其中包括ProgressBar和其他元素。

目前的问题是ProgressBar在放置在RelativeLayout中时会扩展父LinearLayout的高度尺寸。

这是我所拥有的基础知识。

javac -cp /usr/share/java/jnr-ffi.jar:. Getpid.java 

ProgressBar看起来像是通过ProgressBar的高度扩展父LinearLayout的高度。当然不需要。

请记住,上面的LinearLayout位于另一个垂直LinearLayout内,其中weightSum =" 3"。因此,这种高度变形意味着所有这些都不会垂直地适合屏幕。

我的想法中可能存在的一个缺陷是,因为我还没有完成代码(没有将ProgressBar放在三个级别的每个级别中),这只是一个怪癖。我会这样做并报告回来。但在我看来,这似乎不是一件好事。

2 个答案:

答案 0 :(得分:0)

l = ['apples', 'oranges', 'bananas', 'grapes', 'strawberries', 'pears']

half = len(l) / 2

l1 = l[:half]
l2 = l[half:]

l3 = []

for i in range(half):
    l3 += [l1[i],l2[i]],

print l3

答案 1 :(得分:0)

那你去吧。在我填充外部LinearLayout的所有三个级别(在上面的示例代码中不可见)之后,布局似乎自行排序。

所有高度参数都相同(每个高度参数占屏幕高度的三分之一),在xml预览窗格和模拟器上测试时都是如此。

所以在我看来,如果你的weightSum为3,那么在你实际为所有三个重量分区编写代码之前,布局将无法平衡。

例如,这可行:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:wieghtSum="3" >
    <TextView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:text="@string/example_text" />
    <TextView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:text="@string/example_text" />
    <TextView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:text="@string/example_text" />
<LinearLayout/>

但是以下可能会显示文本视图的扭曲高度,因为代码不完整。 weightSum设置为3,但只写入三个分区中的两个分区的代码。

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:wieghtSum="3" >
    <TextView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:text="@string/example_text" />
    <TextView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:text="@string/example_text" />
<LinearLayout/>