Android RelativeLayout:位于右下角

时间:2014-05-31 12:21:18

标签: android android-layout android-linearlayout android-relativelayout

正如您在附带的屏幕截图中看到的,我在设置每个列表项右下角的relativeLayout和相关textview的位置时遇到问题。

一旦文本太长并且需要2行,我的Relativelayout中的textview就会被剪切..

我该如何解决这个问题?

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/gris_clair"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="5dp"
        android:background="@color/blanc" >

        <ImageView
            android:id="@+id/allannonces_image"
            android:layout_width="83dp"
            android:layout_height="90dp"
            android:scaleType="centerCrop" />

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="10dp"
            android:layout_weight="1"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/allannonces_titre"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="TextView"
                android:textSize="15sp" />

            <TextView
                android:id="@+id/allannonces_prix"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="2dp"
                android:text="TextView" />

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >

                <TextView
                    android:id="@+id/allannonces_categorie"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentBottom="true"
                    android:layout_alignParentRight="true"
                    android:layout_marginRight="10dp"
                    android:background="@drawable/bordertextview"
                    android:paddingLeft="5dp"
                    android:paddingRight="7dp"
                    android:text="TextView" />

            </RelativeLayout>

        </LinearLayout>

    </LinearLayout>

</LinearLayout>

3 个答案:

答案 0 :(得分:6)

我会非常简化您的布局设计。

请注意,此布局不仅解决了您的问题,还优化原始设计。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#ffff"
    android:layout_margin="5dp"
    >
    <ImageView
        android:id="@+id/allannonces_image"
        android:layout_width="83dp"
        android:layout_height="90dp"
        android:layout_alignParentLeft="true"
        android:scaleType="centerCrop"
    />
    <TextView
        android:id="@+id/allannonces_titre"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@id/allannonces_image"
        android:text="TextView"
        android:textSize="15sp"
    />
    <TextView
        android:id="@+id/allannonces_prix"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="2dp"
        android:layout_below="@id/allannonces_titre"
        android:layout_toRightOf="@id/allannonces_image"
        android:text="TextView"
        android:textSize="15sp"
    />
    <TextView
        android:id="@+id/allannonces_categorie"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="10dp"
        android:background="#fddd"
        android:paddingLeft="5dp"
        android:paddingRight="7dp"
        android:text="TextView"
    />
</RelativeLayout>

请不要在家中使用此设计中较少的布局。
这将改善整体表现。

请注意,由于我没有颜色,因此我将容器上的白色和TextView类别的灰色硬编码。

答案 1 :(得分:-1)

不仅是minLines而且还提供行

           <TextView
            android:id="@+id/allannonces_titre"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView"
            android:minLines="2"
            android:lines="2"
            android:textSize="15sp" />

答案 2 :(得分:-1)

将包含您有问题的textview的RelativeLayout中的android:layout_width="match_parent"更改为android:layout_width="wrap_content"

这应该可以解决你的问题...