Android —帮助ListView中“复杂”行的XML

前端之家收集整理的这篇文章主要介绍了Android —帮助ListView中“复杂”行的XML 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个相对复杂的布局,我想成为Android中ListView的“行”,但是我很难让最右边的元素显示在每一行上.

该行应如下所示:

左侧有一个图标(50dip x 50dip),右侧有一个图标(9 x 13).图标应左右对齐,中间带有可变文本.

问题是使用我当前的XML布局将我最右边的图标(9 x 13)推离可见区域,而我尝试的修复全部失败.

建议?

![替代文字] [1]

[1]:

  <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:padding="5dip">
    <LinearLayout android:orientation="horizontal"
        android:gravity="center" android:layout_width="fill_parent"
        android:layout_height="60dip">
        <LinearLayout android:orientation="horizontal"
            android:layout_width="fill_parent" android:minHeight="55dip"
            android:padding="5dip" android:layout_height="fill_parent">
            <ImageView android:id="@+id/img" android:layout_width="50dip"
                android:layout_height="50dip" android:layout_marginRight="6dip" />
            <TextView android:ellipsize="end" android:textColor="#454545"
                android:id="@+id/ttt" android:textSize="18sp" android:gravity="center_vertical"
                android:layout_width="fill_parent" android:layout_height="fill_parent" />
        </LinearLayout>
        <ImageView android:layout_height="13dip" android:minWidth="9dip"
            android:layout_width="fill_parent" android:id="@+id/disclosure" />
    </LinearLayout>
</LinearLayout>
最佳答案
为什么不使用带有alignParentLeft和alignParentRight属性的RelativeLayout?我认为这样会更简单,并且使用更少的LayoutManagers.类似于以下内容:请注意,这假定行的高度为50dip,两个图像的高度为50×50 dip.

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="50dip"
    android:layout_width="fill_parent"
    android:layout_weight="0">
<ImageView 
    android:layout_height="50dip"
    android:layout_width="50dip"
    android:layout_alignParentLeft="true"
    android:layout_centerVertical="true"/>
<TextView
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:layout_centerInParent="true" 
    android:text="some text"/>
<ImageView 
    android:layout_height="50dip"
    android:layout_width="50dip"
    android:layout_alignParentRight="true"
    android:layout_centerVertical="true"/>
</RelativeLayout>

猜你在找的Android相关文章