每日一記:Button一些屬性設置

1. Button屬性設置
系統(tǒng)提供的Button都是一成不變的樣子

系統(tǒng)提供的Button.png

方方正正,淺灰色的背景,好low。

  • Seletor可以為Button提供了在各種狀態(tài)下顯示不同圖片或者顏色的選項。想為Button增加點擊效果的好選擇。

    1. 在res/drawable下創(chuàng)建一個Drawable Resource File,這是一個XML文件
    2. 根元素
      <seletor xmlns:android="http://schemas.android.com/apk/res/android">
      </seletor>
    3. 子元素
      <item></item>
    • 子元素的屬性
      • android:drawable 這個屬性用來控制該item顯示的drawable資源
      • android:state_xxxxx 這個屬性用來控制item將在什么情況下顯示drawable資源
        其中的xxxxx是泛指許多情況,常用的情況有
        • android:state_focused
        • android:state_selected
        • android:state_pressed
      • 不指定android:state_xxxxx屬性的item則是默認項,找不到指定情況下使用的item就是用默認項,注意了,默認項item要寫在其他所有item的后面,這個已經坑過我很多次了
    1. 例子 btn_back.xml
      <?xml version="1.0" encoding="utf-8"?>
      <selector xmlns:android="http://schemas.android.com/apk/res/android">
      <item android:state_pressed="true" android:drawable="@drawable/back_press" />
      <item android:drawable="@drawable/back" />
      </selector>

    Button中將該btn_back.xml設置為background屬性即可

    默認展示

    點擊時也就是狀態(tài)為state_pressed

    可以明顯地看到Button的點擊效果,雖說這個效果也是可以直接通過java代碼實現(xiàn),可寫在XML文件當然方便多了。

  • shape可以為Button提供了修改形狀的選項

    1. 在res/drawable下創(chuàng)建一個Drawable Resource File,這是一個XML文件
    2. 根元素
      <shape xmlns:android="http://schemas.android.com/apk/res/android">
      </shape>
    3. 子元素
    • <solid/>-填充顏色
      • ```android:color`` 設置填充的顏色
    • <corners/>-圓角 下列屬性來設置圓角的參數(shù)
      • android:radius四個角的弧度半徑
      • android:bottomLeftRadius左下角的弧度半徑
      • android:bottomRightRadius右下角的弧度半徑
      • android:topLeftRadius左上角的弧度半徑
      • android:topRightRadius右上角的弧度半徑
    • <gradient/>-漸變 不常用不詳述屬性
    • <padding/>-內容離邊界距離
      • android:top距離上邊界的距離
      • android:bottom距離下邊界的距離
      • android:left距離左邊界的距離
      • android:right距離右邊界的距離
    • <size/>-大小 可在這里設置控件寬度
    • <stroke/>-描邊
      • android:color 設置描邊的顏色
      • android:width 設置描邊的寬度
      • android:dashGap 設置小段實線之間的距離
      • android:dashWidth 設置一小段實線的寬度

    4.例子 btn_shape.xml
    <?xml version="1.0" encoding="utf-8"?>
    <shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android">

    <solid android:color="#00ee00"/>
    </shape>

    填充的效果

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

    <gradient android:startColor="#ff8c00"
    android:endColor="#FFFFFF"
    android:angle="270" />

    <stroke android:width="2dp"
    android:color="#dcdcdc" />

    <corners android:bottomLeftRadius="36dp"
    android:topRightRadius="8dp"/>

    <padding android:left="10dp"
    android:top="10dp"
    android:right="10dp"
    android:bottom="10dp" />
    </shape>
    綜合效果

    Button中將該btn_shape.xml設置為background屬性即可

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,811評論 25 708
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,497評論 0 17
  • 概述 今天我們來探究一下android的樣式。其實,幾乎所有的控件都可以使用 background屬性去引用自定義...
    CokeNello閱讀 4,886評論 1 19
  • 我一世的金戈鐵馬,揮劍殺伐 最終敗在了你溫文爾雅,蘿紗傘下 愛是與你四海為家,攜手天涯 得到你執(zhí)筆作畫,瑟瑟風雅 ...
    陌零落閱讀 152評論 0 2
  • 而這多余的一生 你們相遇,你垮掉 而這不幸的一生 你們生離,你垮掉 好好存在 你不許愿,不許無聊的諾言 好好存在 ...
    樟葉閱讀 128評論 0 0