<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                我們注意到有些應用里的按鈕在點擊時的顯示狀態和普通狀態是不一樣的,比如: 普通狀態下: ![](image/d41d8cd98f00b204e9800998ecf8427e.png) 選中狀態下:![](image/d41d8cd98f00b204e9800998ecf8427e.png) 那這種效果是如何實現的呢?在Android系統中提供給我們一種方便與實現這種功能的方法即:state list drawable。 **StateListDrawable**是在XML中定義的drawable對象,我們可以通過設置不同item下的圖片來顯示不同狀態,這取決于 drawable對象的狀態。例如,一個Button控件可以有不同的狀態(點擊、聚焦等),通過一系列的drawable對象,可以為每個不同的狀態提供不同的背景圖片。 可以通過一個xml文件來描述這個狀態序列,通過一個`<selector>`元素下的`<item>`元素來代表每個背景,其中每個`<item>`可以使用不同的屬性值來描述某個狀態。 當狀態發生改變時,狀態列表從上到下進行掃描,會使用第一個匹配當前狀態的圖片。這個選擇不是基于最佳匹配,而是簡單選擇遇到的第一個滿足條件的項目。 它的XML文件定義如下: ~~~ <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" android:constantSize=["true" | "false"] android:dither=["true" | "false"] android:variablePadding=["true" | "false"] > <item android:drawable="@[package:]drawable/drawable_resource" android:state_pressed=["true" | "false"] android:state_focused=["true" | "false"] android:state_hovered=["true" | "false"] android:state_selected=["true" | "false"] android:state_checkable=["true" | "false"] android:state_checked=["true" | "false"] android:state_enabled=["true" | "false"] android:state_activated=["true" | "false"] android:state_window_focused=["true" | "false"] /> </selector> ~~~ - `**<selector>**` 必須的。為根節點,包含一個或多個節點。 - android:constantSize: boolean型,默認為false; - android:dither:boolean型,默認為true,當位圖與屏幕的像素配置不一樣時(例如,一個ARGB為8888的位圖與RGB為555的屏幕)會自行遞色(dither)。設置為false時不可遞色; - android:variablePadding:boolean型,默認為false,當設置為true時,則drawable的padding值隨當前選擇的狀態而改變。 - `**<item>**` - android:drawable:必須的參數,drawable資源; - android:state_pressed:boolean型,設置為true時表示當對象被按下時該item會顯示或者說生效,為false時表示該item為默認狀態非選中狀態; - android:state_focused:boolean型,為true時表示該item生效為焦點在對象上時,false為非選中狀態; - android:state_selected:boolean型,同上功能,該屬性表示的時被選擇狀態; - android:state_checkable:boolean型,僅僅用在可以選擇widget上,為true表示可選擇,為false表示不可選; - android:state_checked:boolean型,為true時,表示當選中時該item生效,false為未選中時生效; - android:state_enabled:boolean型,當為true時,該item在對象可激活時生效,如該對象可以接受觸摸或者點擊事件時; - android:state_window_focused:boolean型,為true時,表示該item在當前窗口焦點為該應用程序窗口時生效也就是說該應用程序窗口為foreground,否則為false; 1. 在/res/drawable 目錄下建立自己需要的.xml文件如button_selector.xml ~~~ <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_enabled="true" android:state_window_focused="false" android:drawable="@drawable/button_background"/> <item android:state_pressed="true" android:state_window_focused="true" android:drawable="@drawable/button_background_selected"/> <item android:state_focused="true" android:drawable="@drawable/button_background"/> <item android:drawable="@drawable/button_background"/> </selector> ~~~ 2.在layout xml文件中引用: ~~~ <Button android:id="@+id/bt_first_dialog_confirm" android:layout_width="140dip" android:layout_height="40dip" android:background="@drawable/button_selector" android:text="確定" android:textColor="#ffffffff" /> ~~~ 同時我們也可以設置GridView中子控件點擊時的效果。這里就不再贅述了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看