0

我有一个水平 LinearLayout 嵌套在一个嵌套在 RelativeLayout 中的垂直 LinearLayout 中。它有 5 个填充宽度的图像视图,我使用重量来均匀地间隔。我在运行时随机填充 1 到 5 个图像视图。它们保持均匀间隔,但不是拥抱父母的左侧,我在文档中读到这是默认设置,而是拥抱右侧。我已经尝试过重力:左和 scaleType="fitStart"。我尝试将此布局嵌套在另一个相对布局中并使用 alignParentLeft。使用 RelativeLayout 而不是 LinearLayout 会将图像向左对齐,但不会均匀分布它们,因此不是一种选择。

以下是我的 XML 文件的相关部分

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Game1" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="7">

<LinearLayout
    android:id="@+id/animal_images_row1"
    android:layout_width="fill_parent"
    android:layout_weight="1"
    android:layout_height="0dip"
    android:layout_marginTop="5dip"
    android:layout_marginBottom="5dip"
    android:layout_marginLeft="5dip"
    android:layout_marginRight="5dip"
    >
<ImageView 
    android:layout_height="wrap_content"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:id="@+id/block1"
    android:contentDescription="@string/ph"
    android:scaleType="centerInside"

    />
<ImageView 
    android:layout_height="wrap_content"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:id="@+id/block2"
    android:contentDescription="@string/ph"
    android:scaleType="centerInside" />
<ImageView 
    android:layout_height="wrap_content"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:id="@+id/block3"
    android:contentDescription="@string/ph" 
    android:scaleType="centerInside"/>
<ImageView 
    android:layout_height="wrap_content"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:id="@+id/block4"
    android:contentDescription="@string/ph"
    android:scaleType="centerInside" />
<ImageView  
    android:layout_height="wrap_content"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:id="@+id/block5"
    android:contentDescription="@string/ph"
    android:scaleType="centerInside" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>

为简洁起见,我删除了 xml 文件的其余部分。在此先感谢您的帮助!

编辑:添加屏幕截图。 5 个 ImageView 中有 2 个被占用。 当我希望它们左对齐时右对齐。

所有 5 个 ImageViews 都被占用并正确对齐。

4

1 回答 1

0

感谢您的评论!每一个小小的见解都有帮助=)我无法弄清楚为什么他们坚持向右,我不会做任何事情都可以迫使他们向左,事实证明在我的代码中我有

imgview.bringToFront();

作为一个临时修复,当我弄清楚布局时,移除那条线后,它们正确地粘在了左边。

于 2013-08-13T02:44:28.203 回答