Android ApiDemos示例解析(133):Views->Layouts->Baseline->1.Top
2012-08-23 06:54
459 查看
对于可以显示文字的View(如TextView,Button等),它的baseline 指的是这个UI控件中文字Text的baseline 到UI控件顶端的偏移值,可以通过View 的getBaseline()返回,如果一个View不支持baseline 对齐(比如ImageView) getBaseline()返回-1.
LinearLayout 带有一个属性android:baselineAligned 其缺省为true,也就是当使用android:orientation 为horizontal ,其子View的baseline 是对齐的,表现在不同View显示的文字的baseline是对齐的。
如本例: 在顶部显示 TextView, Button ,TextView 文字的基准线(baseline)是对齐的。
可以将android:baselineAligned 设为false 做个比较:
<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
android:orientation=”horizontal”
android:baselineAligned=”false”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”>
<TextView
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_marginRight=”3dip”
android:text=”@string/baseline_1_label” />
<Button
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_marginRight=”3dip”
android:text=”@string/baseline_1_button” />
<TextView
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:textSize=”20sp”
android:text=”@string/baseline_1_bigger” />
</LinearLayout>
![](http://www.imobilebbs.com/wordpress/wp-content/uploads/2011/07/20110707001.png)
LinearLayout 带有一个属性android:baselineAligned 其缺省为true,也就是当使用android:orientation 为horizontal ,其子View的baseline 是对齐的,表现在不同View显示的文字的baseline是对齐的。
如本例: 在顶部显示 TextView, Button ,TextView 文字的基准线(baseline)是对齐的。
可以将android:baselineAligned 设为false 做个比较:
<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
android:orientation=”horizontal”
android:baselineAligned=”false”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”>
<TextView
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_marginRight=”3dip”
android:text=”@string/baseline_1_label” />
<Button
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_marginRight=”3dip”
android:text=”@string/baseline_1_button” />
<TextView
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:textSize=”20sp”
android:text=”@string/baseline_1_bigger” />
</LinearLayout>
![](http://www.imobilebbs.com/wordpress/wp-content/uploads/2011/07/20110707001.png)
相关文章推荐
- Android ApiDemos示例解析(137):Views->Layouts->Baseline->5. Multi-line
- Android ApiDemos示例解析(138):Views->Layouts->Baseline->6. Relative
- Android ApiDemos示例解析(139):Views->Layouts->Baseline->Nested Example 2
- Android ApiDemos示例解析(134):Views->Layouts->Baseline->2. Bottom
- Android ApiDemos示例解析(135):Views->Layouts->Baseline->3. Center
- Android ApiDemos示例解析(140):Views->Layouts->Baseline->Nested Example 3
- Android ApiDemos示例解析(136):Views->Layouts->Baseline->4. Everywhere
- Android ApiDemos示例解析(139):Views->Layouts->Baseline->Nested Example 1
- Android ApiDemos示例解析(163):Views->Layouts->TableLayout->08. Toggle Stretch
- Android ApiDemos示例解析(141):Views->Layouts->LinearLayout->1. Vertical
- Android ApiDemos示例解析(148):Views->Layouts->LinearLayout->8. Gravity
- Android ApiDemos示例解析(152):Views->Layouts->RelativeLayout->2.Simple Form
- Android ApiDemos示例解析(157):Views->Layouts->TableLayout->02. Empty Cells
- Android ApiDemos示例解析(153):Views->Layouts->ScrollView->1.Short
- Android ApiDemos示例解析(154):Views->Layouts->ScrollView->2. Long
- Android ApiDemos示例解析(155):Views->Layouts->ScrollView->3. Internal Selection
- Android ApiDemos示例解析(161):Views->Layouts->TableLayout->06. More Spanning and Stretchable
- Android ApiDemos示例解析(156):Views->Layouts->TableLayout->01. Basic
- Android ApiDemos示例解析(164):Views->Layouts->TableLayout->09. Toggle Shrink
- Android ApiDemos示例解析(147):Views->Layouts->LinearLayout->7. Fill Parent