2.2 中在RelativeLayout 中重叠TextView 项目; 1.6没问题
我对包含两个 TextView
和一个 ImageView
的 RelativeLayout
有问题,我用它来显示 ListView
中的项目代码>.这些项目在 Android 1.6 上正确显示,但在 Android 2.2 上 TextView
重叠。
这是一张并排显示正确和不正确行为的图像:
这是以下的源代码我的RelativeLayout:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_marginRight="6dip"
/>
<TextView
android:id="@+id/secondLine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:singleLine="true"
android:layout_below="@+id/firstLine"
android:layout_toRightOf="@id/icon"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
/>
<TextView
android:id="@+id/firstLine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
android:ellipsize="marquee"
android:singleLine="true"
android:layout_toRightOf="@id/icon"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
/>
</RelativeLayout>
知道我做错了什么吗?
非常感谢,
菲利普
I have a problem with a RelativeLayout
containing two TextView
s and a ImageView
, that I use for displaying items in a ListView
. The items are correctly displayed on Android 1.6, but on Android 2.2 the TextView
s are overlapping.
Here is an image that shows the correct and incorrect behavior side-by-side:
And here is the source code of my RelativeLayout:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_marginRight="6dip"
/>
<TextView
android:id="@+id/secondLine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:singleLine="true"
android:layout_below="@+id/firstLine"
android:layout_toRightOf="@id/icon"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
/>
<TextView
android:id="@+id/firstLine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
android:ellipsize="marquee"
android:singleLine="true"
android:layout_toRightOf="@id/icon"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
/>
</RelativeLayout>
Any idea what I am doing wrong?
Thanks a lot,
Philipp
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这与奥克塔维安的答案基本相同,但我认为他实际上解释得不是很好。
您的 XML 文件中有矛盾的陈述。 都有:
您的两个文本视图中 。您还可以:
在文本视图之一中。本质上,您尝试与相对布局的底部对齐,然后尝试在其下方放置一些内容。 “底部”之下没有任何东西。
删除这个矛盾的逻辑,它应该可以解决你的问题。
This is basically the same answer as Octavian's, but I don't think he actually explained it very well.
You have contradicting statements in your XML file. You have:
in both of your text views. You also have:
in one of the textviews. Essentially, your trying to align to the bottom of a relative layout and then trying to put something under it. There isn't anything "under the bottom."
Remove this contradicting logic and it should solve your problem.
我不能 100% 确定这是否是问题,但在 ID 为
firstLine
的TextView
上,您似乎正在将其与它的父级底部对齐,就像使用 <代码> TextView ID <代码>第二行。我很确定您想说的是android:layout_alignParentTop="true"
。我不知道为什么它可以在 Android 1.6 上运行,但不能在 2.2 上运行。
I'm not 100% sure if it is the problem but on your
TextView
with the IDfirstLine
it seems like you are aligning it to it's parents bottom like you do withTextView
IDsecondLine
. I'm quite sure you wanted to sayandroid:layout_alignParentTop="true"
instead.I can't tell why it is working on Android 1.6 but not on 2.2.