我在使用XML创建相对布局时遇到问题,因为列表项用于ListView中的一系列项目。我已经尝试了好几个小时,我试图让它看起来像我想要的但是不能让所有东西出现在正确的位置而不是重叠或错位。我可以获得第一张图片和下两张textview,但无法获得最后的textview和imageview。
我附上了一个线框样式图片,说明我是如何尝试它的,并且想知道是否有人可以帮助我?
alt text http://i26.tinypic.com/6fz702.jpg
如果有人可以提供一些帮助,我将非常感激。
干杯球员
答案 0 :(得分:11)
对于任何有兴趣的人,我设法让这个工作。我知道寻找问题的答案是多么痛苦,而且从未完全解决过。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<ImageView
android:id="@+id/Icon"
android:layout_margin="5dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true" />
<TextView
android:id="@+id/topLine"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:lines="1"
android:layout_toRightOf="@+id/Icon"
android:layout_toLeftOf="@+id/distance"
android:textColor="@color/blacktext"
android:textSize="20dip"
android:text="Name" />
<TextView
android:id="@+id/bottomLine"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:lines="1"
android:layout_toRightOf="@+id/Icon"
android:layout_below="@+id/topLine"
android:layout_toLeftOf="@+id/distance"
android:textColor="@color/blacktext"
android:textSize="15dip"
android:text="Address" />
<TextView
android:id="@+id/distance"
android:layout_height="wrap_content"
android:layout_toLeftOf="@+id/arrow"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:lines="1"
android:textColor="@color/blacktext"
android:textSize="12dip"
android:text="100m" />
<ImageView
android:id="@+id/arrow"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_margin="5dip"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/redarrow"/>
</RelativeLayout>
答案 1 :(得分: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="fill_parent"
android:gravity="center_vertical"
android:minHeight="?android:attr/listPreferredItemHeight"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/TextView01"
android:id="@+id/LinearLayout01"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dip"
android:layout_weight="1"
android:paddingRight="8dip"
android:layout_height="wrap_content"
android:id="@+id/LinearLayout01"
android:orientation="vertical">
<TextView
android:text="@string/Birthday"
android:id="@+id/txtTitlevalue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:ellipsize="end"
android:layout_weight="1"
android:textAppearance="?android:attr/textAppearanceLarge"></TextView>
<TextView
android:text="1960-01-01"
android:id="@+id/txtSubvalue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="-4dip"
android:singleLine="true"
android:ellipsize="end"
android:layout_weight="10"
android:textAppearance="?android:attr/textAppearanceSmall"></TextView>
</LinearLayout>
<TextView
android:text="2"
android:id="@+id/txtNumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:layout_marginRight="10dip"
android:layout_gravity="center_vertical|right"></TextView>
<TextView
android:text="weeks"
android:id="@+id/txtUnit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dip"
android:layout_gravity="center_vertical|right"></TextView>
</LinearLayout>
<!-- <View
android:background="@drawable/black_white_gradient"
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginTop="2dip"
android:layout_marginBottom="2dip"
android:clickable="true"
android:focusable="true"
android:layout_below="@+id/LinearLayout01" /> -->
</LinearLayout>