Android Card UI 卡片樣式顯示

若要將 ListView 顯示像 Google Now 的 Card UI 卡片樣式,

可以參考如下 :

1) card_background.xml :
 程式碼
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:bottom="1dp"
        android:left="5dp"
        android:right="5dp"
        android:top="1dp">
        <shape android:shape="rectangle" >
            <corners android:radius="2dp" />
            <solid android:color="#8C666666" />
        </shape>
    </item>
    <item
        android:bottom="2dp"
        android:left="5dp"
        android:right="5dp"
        android:top="1dp">
        <shape android:shape="rectangle" >
            <corners android:radius="2dp" />
            <solid android:color="#FFFFFFFF" />
        </shape>
    </item>
</layer-list>

2) 在任何 ListItem 設定其背景為 card_background.xml 即可,
 程式碼
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/card_background"
    >

3) 對 ListView 的 Divider 分隔線作些微調, 如下 :
 程式碼
// 分隔線高度
listViewObj.setDividerHeight(10);

// 分隔線透明
listViewObj.getDivider().setAlpha(0);

範例結果, 如下 :
Related Posts Plugin for WordPress, Blogger...