我正在尝试将两个TextView放置在图像视图的右侧(请注意,这不在列表中)。我按照this示例工作,但当我开始增加TextView的文本大小和背景时会出现问题。尽管将高度设置为wrap_content,但顶部文本视图似乎仍在扩展。
看一下我不太懂的例子
机器人:layout_height = “机器人:ATTR / listPreferredItemHeight”
以及为什么布局高度设置为26dip
android:layout_height =“26dip”
这是我的xml,对layout_height进行了一些细微的更改,我认为这些更改
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:padding="6dip">
<ImageView android:id="@+id/icon" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_alignParentTop="true"
android:layout_alignParentBottom="true" android:layout_marginRight="6dip"
android:src="@drawable/icon" />
<TextView android:id="@+id/secondLine" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_toRightOf="@id/icon"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true" android:background="@layout/rounded"
android:textSize="20sp" android:singleLine="true" android:textColor="#FFFFFF"
android:textStyle="bold" android:ellipsize="marquee" android:padding="10dip"
android:layout_margin="5dip"
android:text="Simple application that shows how to use RelativeLayout" />
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="@layout/rounded"
android:layout_toRightOf="@id/icon" android:textSize="20sp"
android:singleLine="true" android:textColor="#FFFFFF"
android:textStyle="bold" android:layout_alignParentRight="true"
android:layout_alignParentTop="true" android:layout_above="@id/secondLine"
android:padding="10dip" android:layout_margin="5dip" android:gravity="center_vertical"
android:text="My Application" />
</RelativeLayout>
这是结果图像???
任何帮助都将不胜感激。
我偶然发现了似乎有效的this post
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout" android:layout_width="fill_parent"
android:layout_height="wrap_content" 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" android:src="@drawable/addphoto" />
<TextView android:id="@+id/topLine" android:layout_height="wrap_content"
android:layout_width="fill_parent" android:layout_margin="4dip"
android:layout_toRightOf="@+id/Icon" android:background="@layout/rounded"
android:padding="10dip" android:textSize="20sp" android:singleLine="true"
android:textColor="#FFFFFF" android:textStyle="bold" android:text="Name" />
<TextView android:id="@+id/bottomLine" android:layout_height="wrap_content"
android:layout_width="fill_parent" android:layout_margin="4dip"
android:layout_toRightOf="@+id/Icon" android:layout_below="@+id/topLine"
android:padding="10dip" android:background="@layout/rounded"
android:textSize="20sp" android:singleLine="true" android:textColor="#FFFFFF"
android:textStyle="bold" android:text="Address" />
</RelativeLayout>
答案 0 :(得分:2)
您会看到该结果,因为您在文本视图中具有以下属性:android:layout_alignParentTop="true"
和android:layout_above="@id/secondLine"
。
以上属性指定顶部必须与父级对齐,底部必须位于“secondline”组件的正上方。
我删除了上述两个属性,并对您的布局进行了一些更改,以达到我认为您想要的效果。请参阅下面的布局。我希望这种布局能达到你想要的目的。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="6dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginRight="6dip"
android:src="@drawable/icon" />
<TextView
android:id="@+id/secondLine"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/icon"
android:layout_below="@+id/text"
android:layout_alignParentRight="true"
android:textSize="20sp"
android:singleLine="true"
android:textColor="#FFFFFF"
android:textStyle="bold"
android:ellipsize="marquee"
android:padding="10dip"
android:layout_margin="5dip"
android:text="Simple application that shows how to use RelativeLayout" />
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/icon"
android:layout_alignBaseline="@id/icon"
android:textSize="20sp"
android:singleLine="true"
android:textColor="#FFFFFF"
android:textStyle="bold"
android:padding="10dip"
android:layout_margin="5dip"
android:gravity="center_vertical"
android:text="My Application" />