Android自定義按鈕樣式和背景

1 需求

開發(fā)android應用時,默認的按鈕樣式溃斋,往往不能滿足項目的主題界拦、配色的需要。因此要對其進行修改梗劫、美化享甸。暫時學習到的兩種方式是統(tǒng)一設置自定義背景、自定義樣式梳侨。


默認按鈕樣式

2 自定義背景

在項目drawable目錄下新建button_blue_background按鈕背景自定義資源文件:

新建自定義背景button_blue_background

文件代碼如下(可根據需要自行調整):
button_blue_background.xml :

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="false">
        <shape>
            <solid android:color="#278BE0"></solid>
            <corners android:radius="3dp"></corners>
            <stroke android:width="0dp"></stroke>
        </shape>
    </item>

    <item android:state_pressed="true">
        <shape>
            <solid android:color="#4DA0E8"></solid>
            <corners android:radius="3dp"></corners>
            <stroke android:width="0dp"></stroke>
        </shape>
    </item>



</selector>

在布局文件中引用該自定義背景:

<Button android:id="@+id/btn_cancel"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="5dp"
            android:layout_weight="1"
            android:text="取消"
            android:background="@drawable/button_blue_background"/>

效果如下圖:


自定義背景效果

Button高度和字體顏色可根據需要再進行其他調整蛉威。

3 自定義樣式

通過自定義樣式,可以更方便走哺、更多的操作按鈕的樣式和布局蚯嫌。首先,打開res/drawable/values/styles.xml文件丙躏,在其中resources節(jié)點下添加button_blue_style結點择示。


添加自定義按鈕樣式到styles文件

代碼如下:

<style name="button_blue_style">
        <item name="android:textColor">#FFFFFF</item>
        <item name="android:background">@drawable/button_blue_background</item>
    </style>

代碼中引用了上一節(jié)編寫的自定義背景文件@drawable/button_blue_background。在布局中引用方式如下:

<Button android:id="@+id/btn_cancel"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="5dp"
            android:layout_weight="1"
            android:text="取消"
            style="@style/button_blue_style"/>

運行后晒旅,效果如下圖:


自定義樣式效果

按鈕高度太高栅盲,是因為按鈕默認具有minWidth、minHeight屬性废恋,將其置為0谈秫,設置高度為30dp.

<style name="button_blue_style">
        <item name="android:textColor">#FFFFFF</item>
        <item name="android:background">@drawable/button_blue_background</item>
        <item name="android:minWidth">0dp</item>
        <item name="android:minHeight">0dp</item>
        <item name="android:height">30dp</item>
    </style>

最終效果如下圖所示:


最終效果
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市拴签,隨后出現的幾起案子孝常,更是在濱河造成了極大的恐慌,老刑警劉巖蚓哩,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件构灸,死亡現場離奇詭異,居然都是意外死亡岸梨,警方通過查閱死者的電腦和手機喜颁,發(fā)現死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來曹阔,“玉大人半开,你說我怎么就攤上這事≡叻荩” “怎么了寂拆?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵奢米,是天一觀的道長。 經常有香客問我纠永,道長鬓长,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任尝江,我火速辦了婚禮涉波,結果婚禮上,老公的妹妹穿的比我還像新娘炭序。我一直安慰自己啤覆,他們只是感情好,可當我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布惭聂。 她就那樣靜靜地躺著窗声,像睡著了一般。 火紅的嫁衣襯著肌膚如雪辜纲。 梳的紋絲不亂的頭發(fā)上嫌佑,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天,我揣著相機與錄音侨歉,去河邊找鬼屋摇。 笑死,一個胖子當著我的面吹牛幽邓,可吹牛的內容都是我干的炮温。 我是一名探鬼主播,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼牵舵,長吁一口氣:“原來是場噩夢啊……” “哼柒啤!你這毒婦竟也來了?” 一聲冷哼從身側響起畸颅,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤担巩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后没炒,有當地人在樹林里發(fā)現了一具尸體涛癌,經...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年送火,在試婚紗的時候發(fā)現自己被綠了拳话。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡种吸,死狀恐怖弃衍,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情坚俗,我是刑警寧澤镜盯,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布岸裙,位于F島的核電站,受9級特大地震影響速缆,放射性物質發(fā)生泄漏哥桥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一激涤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧判呕,春花似錦倦踢、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至边涕,卻和暖如春晤碘,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背功蜓。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工园爷, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人式撼。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓童社,卻偏偏與公主長得像,于是被迫代替她去往敵國和親著隆。 傳聞我的和親對象是個殘疾皇子扰楼,可洞房花燭夜當晚...
    茶點故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,756評論 25 707
  • 用兩張圖告訴你,為什么你的 App 會卡頓? - Android - 掘金 Cover 有什么料美浦? 從這篇文章中你...
    hw1212閱讀 12,699評論 2 59
  • 1弦赖、通過CocoaPods安裝項目名稱項目信息 AFNetworking網絡請求組件 FMDB本地數據庫組件 SD...
    陽明先生_X自主閱讀 15,969評論 3 119
  • 下面是最近在前端面試工作中,結合公司的業(yè)務需求浦辨,定的針對前端招聘不同等級的要求: 筆試 算法題考試 初級 1, j...
    技術與健康閱讀 239評論 1 1
  • 一天早上我醒來時蹬竖,發(fā)現自己的床頭放著一盞很古老的燈,我以為它是一盞我父親小時候用的煤油燈流酬,所以就沒把它當成一回事案腺。...
    明天_6fc9閱讀 286評論 0 0