1. 程式人生 > >我的Android進階之旅------>怎樣在多個LinearLayout中加入分隔線

我的Android進階之旅------>怎樣在多個LinearLayout中加入分隔線

lai tex pre draw white 方法 utf == 技術分享

技術分享

假設要適合於全部的Android版本號,能夠在多個LinearLayout放置用於顯示分隔線的View。

比如,放一個ImageView組件。然後將其背景設為分隔線的顏色或圖像,分隔線View的定義代碼例如以下:

<ImageView   
        android:layout_width="fill_parent"  
        android:layout_height="1dp"  
        android:background="#ffffff"  
        />  
效果例如以下:

技術分享


在Android3.0及以上版本號,LinearLayout支持直接顯示分隔線。設置<LinearLayout>標簽的android:showDividers屬性能夠再LinearLayout的對應位置顯示分隔線。假設有多個LinearLayout,顯示效果和在LinearLayout之間加分隔線是一樣的。

android:showDividers屬性能夠設置例如以下4個值:

none:不顯示分隔線;
beginning:在LinearLayout的開始處顯示分隔線;
end:在Linearlayout的結尾處顯示分隔線;
middle:在LinearLayout中的每兩個組件間顯示分隔線:
除了須要設置android:showDividers屬性外,還要設置android:divider屬性。該屬性表示分隔線的圖像,須要一個Drawable ID

android:divider="@drawable/shape"<!--切割線圖片-->  
android:showDividers="middle|beginning|end|none" <!--切割線位置-->  

1、android:divider="@drawable/shape"

drawable能夠是圖片文件,也能夠是xml繪制的shape。

切割線假設是圖片那就直接使用圖片即可,假設要使用顏色就必須使用shape來顯示,直接使用顏色或Color是沒實用的
使用shape的時候要註意設置size屬性不設置寬高切割線就不會顯示出來,假設使用line那填充顏色僅僅能使用stroke來顯示顏色

使用shape的時候一定要加入<size> 比如:

[java] view plaincopy
  1. <?

    xml version="1.0" encoding="utf-8"?>

  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3. <solid android:color="@color/account_line" />
  4. <size android:height="1px" />
  5. </shape>

2、android:showDividers = "middle|end|beginning|none"

middle 在每一項中間加入切割線

end 在總體的最後一項加入切割線

beginning 在總體的最上方加入切割線

none 無


在Java代碼中能夠使用以下兩個方法設置android:showDividers和android:divider

linearLayout.setShowDividers:設置android:showDividers屬性。

linearLayout.setDividerDrawable: 設置android:divider屬性。


PS:能夠參考

Android 自己定義控件 優雅實現元素間的切割線 (支持3.0下面)

地址:http://blog.csdn.net/lmj623565791/article/details/42407923




====================================================================================

作者:歐陽鵬 歡迎轉載,與人分享是進步的源泉!

轉載請保留原文地址:http://blog.csdn.net/ouyang_peng

====================================================================================

技術分享


我的Android進階之旅------&gt;怎樣在多個LinearLayout中加入分隔線