Android如何自定義按鈕效果
安卓原生的按鈕是多么丑,效果是多么單調(diào),大家也是有目共睹的。
要做一個APP少不了使用按鈕,一個好看的按鈕少不了好看的效果和外表,這次主要跟大家講講如何用drawable的xml文件弄一些好看的自定義樣式。
首先是外表
在APP中四四方方,灰色底黑色字的按鈕是很難看的,我們希望看到的是圓角,彩色,白字(根據(jù)你的個人審美也可以是其他樣式)。
首先是在layout里新建一個按鈕 ,然后在drawable文件夾里新建一個drawable resource file ,不妨起名為shape ,加一個selector節(jié)點(diǎn)里新建一個item節(jié)點(diǎn),在item節(jié)點(diǎn)里添加樣式
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape> <!-- 填充的顏色(亮綠) --> <solid android:color="#28baa7" /> <!-- 設(shè)置按鈕的四個角為弧形 --> <!-- android:radius 弧形的半徑 --> <corners android:radius="5dip" /> <!-- padding:Button里面的文字與Button邊界的間隔 --> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> </selector>
如果想做點(diǎn)擊后按鈕的樣式則要 再添加一個item節(jié)點(diǎn),整個的drawable就是這樣
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true"> <shape> <!-- 填充的顏色(白色) --> <solid android:color="#aaa" /> <!-- 設(shè)置按鈕的四個角為弧形 --> <!-- android:radius 弧形的半徑 --> <corners android:radius="5dip" /> <!-- padding:Button里面的文字與Button邊界的間隔 --> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> <item> <shape> <!-- 填充的顏色(亮綠) --> <solid android:color="#28baa7" /> <!-- 設(shè)置按鈕的四個角為弧形 --> <!-- android:radius 弧形的半徑 --> <corners android:radius="5dip" /> <!-- padding:Button里面的文字與Button邊界的間隔 --> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> </selector>
這樣的樣式是一般時是亮綠色四周圓角,點(diǎn)擊時是白色圓角,除了點(diǎn)擊之外還有很多的情況請用時自行查找,也是大同小異
好啦,接下來是布局文件的設(shè)置
<Button android:layout_width="150dp" android:layout_height="wrap_content" android:text="button" android:textColor="#fff" android:background="@drawable/shape" android:id="@+id/btn" android:layout_gravity="center_horizontal" />
這個把文字設(shè)為白色居中,好啦,一個比較好看的按鈕就這么誕生啦
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android自定義VIew實(shí)現(xiàn)衛(wèi)星菜單效果淺析
這篇文章主要介紹了Android自定義VIew實(shí)現(xiàn)衛(wèi)星菜單效果淺析,非常不錯具有參考借鑒價值,需要的朋友可以參考下2016-11-11android語音即時通訊之錄音、播放功能實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了android語音即時通訊之錄音、播放功能的實(shí)現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07Android利用AsyncTask異步類實(shí)現(xiàn)網(wǎng)頁內(nèi)容放大縮小
這篇文章主要為大家介紹了利用AsyncTask異步類實(shí)現(xiàn)網(wǎng)頁內(nèi)容放大縮小的相關(guān)資料,感興趣的小伙伴們可以參考一下2016-07-07Android 藍(lán)牙連接 ESC/POS 熱敏打印機(jī)打印實(shí)例(藍(lán)牙連接篇)
這篇文章主要介紹了Android 藍(lán)牙連接 ESC/POS 熱敏打印機(jī)打印實(shí)例(藍(lán)牙連接篇),具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-04-04Android實(shí)現(xiàn)多點(diǎn)觸控,自由縮放圖片的實(shí)例代碼
本篇文章主要介紹了Android實(shí)現(xiàn)多點(diǎn)觸控,自由縮放圖片的實(shí)例代碼,可以自由地對圖片進(jìn)行縮放和移動,非常具有實(shí)用價值,需要的朋友可以參考下。2016-12-12詳細(xì)介紹Android中的視圖焦點(diǎn)Focus的使用
本篇文章主要介紹了詳細(xì)介紹Android中的視圖焦點(diǎn)Focus的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01