Android 給控制元件設定帶陰影背景
阿新 • • 發佈:2019-02-03
最簡單的方法就是用背景圖片了,哈哈,不過這裡說下用xml實現,主要用到<layer-list></layer-list>標籤,看例子:
<TextView android:id="@+id/id_done_tv" android:layout_width="130dp" android:layout_height="40dp" android:layout_below="@id/id_layer_view_b" android:layout_centerHorizontal="true" android:layout_marginTop="26dp" android:background="@drawable/selector_ack_result_btn_bg" android:gravity="center" android:text="確定" android:textColor="@color/white" android:textSize="16sp" />
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="false"> <layer-list> <!-- 相當於padding --> <item android:left="0dp" android:top="0dp"> <shape> <!-- 指定圓角矩形的4個圓角的半徑 --> <solid android:color="#6A6767" /> <corners android:radius="4dp" /> </shape> </item> <item android:bottom="2dp" android:right="0dp"> <shape> <!-- 指定圓角矩形的4個圓角的半徑 --> <solid android:color="#cacaca" /> <corners android:radius="4dp" /> </shape> </item> </layer-list> </item> <item android:state_enabled="true"> <layer-list> <!-- SHADOW LAYER --> <item android:left="0dp" android:top="0dp"> <shape> <solid android:color="#4D8BB9" /> <corners android:radius="4dp" /> </shape> </item> <!-- CONTENT LAYER --> <!-- 相當於padding --> <item android:bottom="2dp" android:right="0dp"> <shape> <solid android:color="#56c5ff" /> <corners android:radius="4dp" /> </shape> </item> </layer-list> </item> </selector>
效果如圖:
其他複雜的方法就不做記錄了