日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

Android UI:XML文件配置按钮等背景方案

發(fā)布時(shí)間:2025/5/22 Android 85 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android UI:XML文件配置按钮等背景方案 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

? (1)在開發(fā)中,我們經(jīng)常會(huì)遇到一些純色或帶邊框的簡(jiǎn)單樣式的按鈕或div,很多時(shí)候,都是用九宮格的背景圖片來(lái)貼上去。但仔細(xì)想來(lái),使用圖片也帶來(lái)了一些性能上的問(wèn)題,包括過(guò)多的圖片文件會(huì)導(dǎo)致渲染頁(yè)面的時(shí)候需要加載渲染很多圖片,以及圖片也會(huì)帶來(lái)安裝包的增加,最后就是用圖片很麻煩的說(shuō),就如能夠用xml文件配出來(lái),就不用再等UED了。

? ? (2)按鈕文字顏色在不同的狀態(tài)下也不一樣,最開始比較傻,直接通過(guò)代碼來(lái)動(dòng)態(tài)改變,想想就惡心。其實(shí)這也是可以通過(guò)XML配置出來(lái)的。

? ??

? ? 好,下面就進(jìn)入正題吧。

注:以下并不局限于按鈕,照樣可以用于各種view的background。

一)、配置按鈕背景

? ? Android能夠支持shape、selector等。shape顧名思義就是定義一個(gè)形狀,包括邊框、填充色、圓角等。如下實(shí)例:

  • <shape??xmlns:android="http://schemas.android.com/apk/res/android"??android:shape="rectangle">??<gradient?android:startColor="#FFFF0000"??android:endColor="#80FF00FF"??android:angle="270"?/>??<padding?android:left="50dp"??android:top="20dp"?android:right="7dp"??android:bottom="7dp"?/>??<corners?android:radius="8dp"?/>??<solid?android:color="#b4000000"?/>?<stroke?android:width="2.0dip"??android:color="#b4ffffff"??android:dashWidth="3.0dip"??android:dashGap="0.0dip"?/> </shape>
  • 簡(jiǎn)單說(shuō)明下:

    gradient???-- 對(duì)應(yīng)顏色漸變。 startcolor、endcolor就不多說(shuō)了。?android:angle 是指從哪個(gè)角度開始變。

    solid ? ? ?-- ?填充色。

    stroke ? -- ?邊框,其中width就是邊框線的寬度。

    corners ?-- ?是否添加圓角,radius就是圓角的半徑。

    padding ? -- 定義內(nèi)容離邊界的距離。 與android:padding_left、android:padding_right這些是一個(gè)道理。


    細(xì)心的讀者就會(huì)想到,這個(gè)shap好像只描述了一種狀態(tài)啊,怎么表示按鈕的其他狀態(tài)呢?那就得用到selector了。

    selector顧名思義表示選擇器的意思,就是能夠根據(jù)不同的狀態(tài)選擇響應(yīng)的參數(shù)。好了,直接亮代碼吧,多說(shuō)無(wú)益:

    <?xml?version="1.0"?encoding="utf-8"?> <selector?xmlns:android="http://schemas.android.com/apk/res/android"><item?android:state_pressed="true"><shape?android:shape="rectangle"><solid?android:color="#53cbff"?/><corners?android:radius="3dp"?/></shape>??????</item><item?android:state_selected="true"><shape?android:shape="rectangle"><solid?android:color="#53cbff"?/><corners?android:radius="3dp"?/></shape></item><item><shape?android:shape="rectangle"><solid?android:color="#44b2ff"?/><corners?android:radius="3dp"?/></shape></item> </selector>



    效果就不再展示了,就是一個(gè)藍(lán)色的按鈕。

    二)、配置按鈕的顏色方案

    ? ? 我們經(jīng)常會(huì)遇到常態(tài)是按鈕背景是深的,按下去后是淺色背景,這時(shí)候就需要按鈕文字顏色也能夠隨之改變,否則效果就大打折扣了。

    ? ? 肯定,你也會(huì)想到其實(shí)只要和selector配合使用就好了,如下:

    <?xml?version="1.0"?encoding="utf-8"?> <selector?xmlns:android="http://schemas.android.com/apk/res/android"><item?android:state_focused="true"?android:color="#ffffff"/><item?android:state_selected="true"?android:color="#ffffff"/><item?android:state_pressed="true"?android:color="#ffffff"/><item?android:color="#aaaaaa"/> </selector>


    使用的時(shí)候在android:textColor="@drawable/****"就好了。

    好了,具體怎么靈活使用以及他們的含義就自己用實(shí)踐去摸索吧。


    轉(zhuǎn)載于:https://my.oschina.net/cheneywangc/blog/195731

    總結(jié)

    以上是生活随笔為你收集整理的Android UI:XML文件配置按钮等背景方案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。