0

我需要将 ImageView 定位在用户名的同一级别(示例中为 vito)。

这就是我所拥有的:

在此处输入图像描述

我想要这个(看第二个图标):

在此处输入图像描述

我的xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content" 
android:layout_width="fill_parent" 
android:paddingBottom="5px"
android:paddingTop="5px" 
android:paddingLeft="5px"
android:orientation="horizontal"
style="@style/ListRow">

<ImageView
    android:id="@+id/imagenItem"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_marginRight="6dip"
    android:layout_gravity="top"
    android:gravity="top"
    android:layout_alignParentTop="true"
    style="@style/iconLISTA" />

<LinearLayout
    android:orientation="vertical"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:layout_height="fill_parent">

    <RelativeLayout
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/idUsuario"
            android:textSize="@dimen/font_size_small" 
            android:textStyle="bold" 
            android:textColor="@color/list_item_text"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"/>

        <TextView
            android:id="@+id/hora" 
            android:textSize="@dimen/font_size_small" 
            android:textStyle="bold" 
            android:textColor="@color/list_item_secondary_text"
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content"
            android:layout_marginLeft="215px" />
    </RelativeLayout>

    <TextView
        android:id="@+id/comentarios" 
        android:textSize="@dimen/font_size_small" 
        android:color="@color/list_item_text"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:layout_marginLeft="0px" />
</LinearLayout>
</LinearLayout>

谢谢。

4

3 回答 3

1

将 ImageView 和以下 LinearLayout 的高度属性更改为 wrap_content。

ImageView 当前是 fill_parent ,这使得它占据了所有可用的垂直空间并垂直居中。

于 2012-04-13T18:31:16.737 回答
0

试试这个,有点简化:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:padding="5dp" >

    <ImageView
        android:id="@+id/imagenItem"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_gravity="top"
        android:scaleType="fitCenter"
        android:src="@drawable/avatar_default" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/idUsuario"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="left"
                android:text="usuario"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/hora"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="right"
                android:text="hora"
                android:textStyle="bold" />
        </LinearLayout>

        <TextView
            android:id="@+id/comentarios"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="commmmment" />
    </LinearLayout>

</LinearLayout>

而且你不应该使用 px,总是使用 dp/dip。

于 2012-04-13T18:51:57.750 回答
0

添加:

android:scaleType="fitStart"

到 ImageView 布局。

例如

<ImageView
    android:id="@+id/imagenItem"
    android:scaleType="fitStart"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_marginRight="6dip"
    android:layout_gravity="top"
    android:gravity="top"
    android:layout_alignParentTop="true"
    style="@style/iconLISTA" />
于 2012-04-13T18:33:42.177 回答