RelativeLayout中的基线是什么?

当在相对布局的上下文中使用时,“基线”是指什么? 简单的问题,可能,但文档和谷歌提供没有提示。

基线这个术语来自印刷术 。 这是文字中的无形线条字母。

例如,假设您将两个TextView元素相邻放置。 你给第二个TextView一个大的填充(比如20dp)。 如果将layout_alignBaseline添加到第二个元素,则文本将“scoot up”以与第一个元素的基线alignment。 来自这两个元素的文本将显示为如同它们被写在相同的不可见行上。

 <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/text1" android:text="aatlg" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:text="joof" android:background="#00ff00" android:padding="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/text1" android:layout_alignBaseline="@id/text1" /> </RelativeLayout> 

这是一个视觉上的解释,可以澄清克里斯蒂安的答案:

 <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/text1" android:text="Lorem" android:background="@android:color/holo_blue_light" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:text="Ipsum" android:background="@android:color/holo_orange_light" android:padding="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/text1" <!-->>>>>>>--> android:layout_alignBaseline="@id/text1" /> </RelativeLayout> 

这段代码如下所示:

用android:layout_alignBaseline

现在,如果我删除android:layout_alignBaseline属性,相同的布局看起来像这样: 没有android:layout_alignBaseline

观察第二个视图的高度有一个影响(在第一种情况下,填充应用于视图的顶部)是很有趣的。