記錄Android實戰項目中drawable資源代碼片段

今天就想記錄記錄實戰項目中為了實現一些效果寫的drawable文件,什么按鈕的背景,點擊效果selector什么的,嘖嘖嘖~ 放張我愛的仙劍四圖片~ 啊哈哈哈~(其實我最愛菱紗,夢璃那么美,我真正的女神吶)

圖片取自網絡
  1. selector_tab_模塊.xml(一般項目中的tab點擊,就會切換一張圖片)


    截圖
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@mipmap/tab_me_selected" android:state_selected="true" />
    <item android:drawable="@mipmap/tab_me_normal" />
</selector>
  1. bg_rec200_顏色.xml(一個弧形的背景,有時候一段文字的背景,或者按鈕的背景,隨需求改變顏色就可以噠,還有角度,邊界間距也是隨需求更改)


    截圖
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
  <!-- padding設置內容區域離邊界的間距 -->
    <padding
        android:bottom="5dp"
        android:left="5dp"
        android:right="5dp"
        android:top="5dp" />
    <!-- corners設置圓角,只適用于rectangle -->
    <corners
        android:radius="200dp" />
    <solid android:color="@color/Gray05" />
</shape> 
  1. selector_rec200_pink2gray.xml(像按鈕的點擊,按下也許是不同的背景,邊界、角度隨需求變化,我的取名方法是對我來說比較好辨認的方法)


    截圖
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <layer-list>
            <item>
                <shape android:shape="rectangle">
                    <padding
                        android:bottom="5dp"
                        android:left="5dp"
                        android:right="5dp"
                        android:top="5dp" />
                    <!-- corners設置圓角,只適用于rectangle -->
                    <corners android:radius="200dp" />
                    <solid android:color="@color/Purple02" />
                </shape>
            </item>
        </layer-list>
    </item>
    <item android:state_enabled="false">
        <layer-list>
            <item>
                <shape android:shape="rectangle">
                    <padding
                        android:bottom="5dp"
                        android:left="5dp"
                        android:right="5dp"
                        android:top="5dp" />
                    <!-- corners設置圓角,只適用于rectangle -->
                    <corners android:radius="200dp" />
                    <solid android:color="@color/Gray03" />
                </shape>
            </item>
        </layer-list>
    </item>
    <item>
        <layer-list>
            <item>
                <shape android:shape="rectangle">
                    <padding
                        android:bottom="5dp"
                        android:left="5dp"
                        android:right="5dp"
                        android:top="5dp" />
                    <!-- corners設置圓角,只適用于rectangle -->
                    <corners android:radius="200dp" />
                    <solid android:color="@color/Purple01" />
                </shape>
            </item>
        </layer-list>
    </item>
</selector>
  1. selector_rbtn_模塊.xml(RadioButton的自定義背景)


    截圖
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item
             android:state_checked="false"
             android:drawable="@mipmap/icon_select" />
        <item
            android:state_checked="true"
            android:drawable="@mipmap/icon_selected" />
</selector>
  1. selector_radio_bg.xml


    截圖
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/selector_rec4_purple" android:state_checked="true" />
    <item android:drawable="@drawable/selector_rec4_purple" android:state_selected="true" />
    <item android:drawable="@color/White" />
</selector> 
  1. rating_bar.xml(設置RatingBar的progressDrawable)


    截圖
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@android:id/background"
        android:drawable="@mipmap/icon_star_hole" />
    <item android:id="@android:id/secondaryProgress"
        android:drawable="@mipmap/icon_star_hole" />
    <item android:id="@android:id/progress"
        android:drawable="@mipmap/icon_star_yellow" />
</layer-list>
  1. bg_rec4_stroke_purple.xml


    截圖
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <!-- corners設置圓角,只適用于rectangle -->
    <corners
        android:radius="4dp" />
    <!-- stroke設置描邊 -->
    <stroke
        android:width="1dp"
        android:color="@color/Purple01" />
</shape>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 很早看過這篇文章,并做了筆記,后來看到群里的小伙伴有問相關Drawable的問題,就把這篇翻譯過來的文章給放出來了...
    Kotyo閱讀 1,513評論 0 5
  • 1.源代碼格式規范 1.1 Java文件樣式 1.1.1版權信息 版權信息必須在 java 文件的開頭,比如: /...
    吉瑞蜀黍閱讀 604評論 0 1
  • android文件眾多,根據名稱來辨別用途很重要,因此命名要規范 這篇文章可參考:Android 命名規范 (提高...
    Near尼爾閱讀 480評論 0 2
  • 張八月閱讀 443評論 0 0
  • 烏云里藏著烈馬 奔騰 呼嘯 向世界傾倒 黑暗 然后 寂靜忽然來到 洗禮的街道 水洼映著天光 萬千綠葉 已淚目
    萌牛_祭強閱讀 243評論 0 1