Android如何自定義按鈕效果
安卓原生的按鈕是多么丑,效果是多么單調(diào),大家也是有目共睹的。
要做一個(gè)APP少不了使用按鈕,一個(gè)好看的按鈕少不了好看的效果和外表,這次主要跟大家講講如何用drawable的xml文件弄一些好看的自定義樣式。
首先是外表
在APP中四四方方,灰色底黑色字的按鈕是很難看的,我們希望看到的是圓角,彩色,白字(根據(jù)你的個(gè)人審美也可以是其他樣式)。
首先是在layout里新建一個(gè)按鈕 ,然后在drawable文件夾里新建一個(gè)drawable resource file ,不妨起名為shape ,加一個(gè)selector節(jié)點(diǎn)里新建一個(gè)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è)置按鈕的四個(gè)角為弧形 --> <!-- 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)擊后按鈕的樣式則要 再添加一個(gè)item節(jié)點(diǎn),整個(gè)的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è)置按鈕的四個(gè)角為弧形 -->
<!-- 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è)置按鈕的四個(gè)角為弧形 -->
<!-- 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>
這樣的樣式是一般時(shí)是亮綠色四周圓角,點(diǎn)擊時(shí)是白色圓角,除了點(diǎn)擊之外還有很多的情況請(qǐng)用時(shí)自行查找,也是大同小異
好啦,接下來是布局文件的設(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" />
這個(gè)把文字設(shè)為白色居中,好啦,一個(gè)比較好看的按鈕就這么誕生啦
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android實(shí)現(xiàn)頁面短信驗(yàn)證功能
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)頁面短信驗(yàn)證功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
Android中RecyclerView布局代替GridView實(shí)現(xiàn)類似支付寶的界面
RecyclerView比GridView來得更加強(qiáng)大,不僅是在分割線的繪制方面,在條目的編輯上也做得同樣出色,下面就來看一下Android中RecyclerView布局代替GridView實(shí)現(xiàn)類似支付寶的界面的實(shí)例2016-06-06
Android開發(fā)實(shí)戰(zhàn)鬧鐘項(xiàng)目
這篇文章主要介紹了Android開發(fā)實(shí)戰(zhàn)鬧鐘項(xiàng)目,根據(jù)我們手機(jī)鬧鐘設(shè)計(jì)的一個(gè)鬧鐘APP,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-09-09
Android Fragment(動(dòng)態(tài),靜態(tài))碎片詳解及總結(jié)
這篇文章主要介紹了Android Fragment詳解及總結(jié)的相關(guān)資料,這里對(duì)Android Fragment 動(dòng)態(tài),靜態(tài)碎片進(jìn)行了整理總結(jié),需要的朋友可以參考下2016-12-12
Android項(xiàng)目基本結(jié)構(gòu)詳解
這篇文章主要為大家詳細(xì)介紹了Android項(xiàng)目基本結(jié)構(gòu),從最基本的內(nèi)容講起,帶你逐步進(jìn)入用C#進(jìn)行Android應(yīng)用開發(fā)的樂園,感興趣的小伙伴們可以參考一下2016-06-06
Android Studio搜索功能(查找功能)及快捷鍵圖文詳解
這篇文章主要介紹了Android Studio搜索功能(查找功能)及快捷鍵圖文詳解,本文圖文并茂給大家介紹的非常詳細(xì),需要的朋友可以參考下2017-12-12
Android LinearLayout實(shí)現(xiàn)自動(dòng)換行
這篇文章主要為大家詳細(xì)介紹了Android LinearLayout實(shí)現(xiàn)自動(dòng)換行,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08
Android Studio 報(bào)Integer types not allowed錯(cuò)誤
本文給大家分享的是在使用Android Studio的過程中遇到的報(bào)Integer types not allowed錯(cuò)誤的分析及解決方法,非常實(shí)用,有需要的小伙伴可以參考下2017-10-10
36個(gè)Android開發(fā)常用經(jīng)典代碼大全
本篇文章主要介紹了36個(gè)Android開發(fā)常用經(jīng)典代碼片段,都是實(shí)用的代碼段,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-11-11

