我遇到的问题是,相对高度的两个Textview在相互之间相互碰撞。
我使用以下布局。
<?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="fill_parent">
<ImageView
android:id="@+id/logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="centerInside"
android:src="@drawable/icon" />
<TextView
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="NameNameNameNameNameNameName"
android:layout_alignParentTop="true"
android:layout_toRightOf="@id/logo"
android:gravity="clip_horizontal"
android:lines="1" />
<TextView
android:id="@+id/information"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Distance"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true" />
<TextView
android:id="@+id/nrcoupons"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Number"
android:layout_alignRight="@id/information"
android:layout_alignBottom="@id/logo" />
<TextView
android:id="@+id/subcategory"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Subcategory"
android:layout_alignLeft="@id/name"
android:layout_alignBottom="@id/logo" />
</RelativeLayout>
这给了我这个观点:
alt text http://janusz.de/~janusz/view.png
一切都是我需要的,除了两个文本视图名称和信息显示在同一个屏幕空间上,一个在另一个上面。
我该如何避免这种情况?
答案 0 :(得分:2)
对于@+id/name
TextView
,请为右侧android:layout_toLeftOf="..."
添加TextView
。屏幕截图和XML似乎没有对齐(屏幕截图在覆盖的TextView中显示为“距离”,但XML没有),所以我不完全确定这是哪个小部件。
如果您的目标是Android 1.5,则需要在XML中对小部件进行排序,以便在从android:layout_toLeftOf
或android:layout_toRightOf
引用小部件之前定义小部件。如果您定位的是Android 1.6及更新版本,则可以按任意顺序排列,但第一次出现的任何不同ID都必须包含+
符号,即使第一次出现在android:layout_toLeftOf
中也是如此属性而不是android:id
属性。
答案 1 :(得分:0)
你的namenamename textview设置为width = fill_parent,所以你不能把它放在右边;)