顏色狀態清單資源
    
    
      
    
    
      
      透過集合功能整理內容
    
    
      
      你可以依據偏好儲存及分類內容。
    
  
  
      
    
  
  
  
  
  
    
    
    
  
  
    
    
    
ColorStateList
是可以在 XML 中定義的物件,並會套用為實際隨需變更顏色的顏色
得知物件的 View 物件狀態
套用。例如 Button
小工具可能存在以下其中一種狀態:已按下、已聚焦或兩者皆非。使用顏色狀態清單
即可為每個州提供不同顏色
您可以在 XML 檔案中說明狀態清單。每個顏色都會在單一 <selector> 元素內的 <item> 元素中定義。每<item>
會使用各種屬性,描述要在何種狀態下使用。
每次狀態變更時,狀態清單都會從上到下掃遍,而第一個
才會符合目前狀態此選擇不是以「最佳」為依據
而是符合狀態最低條件的第一個項目
注意:如要提供靜態顏色資源,請使用
簡單的顏色值。
- 檔案位置:
- res/color/filename.xml
 系統會把檔案名稱當做資源 ID。
- 編譯資源資料類型:
- ColorStateList的資源指標。
- 資源參照:
- 
Java:R.color.filename
 XML:@[package:]color/filename
- 語法:
- 
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:color="hex_color"
        android:lStar="floating_point_value"
        android:state_pressed=["true" | "false"]
        android:state_focused=["true" | "false"]
        android:state_selected=["true" | "false"]
        android:state_checkable=["true" | "false"]
        android:state_checked=["true" | "false"]
        android:state_enabled=["true" | "false"]
        android:state_window_focused=["true" | "false"] />
</selector>
- 元素:
- 
  - <selector>
- 必要。這是根元素。包含一或多個 <item>元素。屬性: 
        - xmlns:android
- 字串。必要。定義 XML 命名空間,
          "http://schemas.android.com/apk/res/android"。
 
- <item>
- 根據其屬性描述的狀態,定義特定狀態下使用的顏色。這是
<selector>元素的子項。屬性: 
        - android:color
- 十六進位顏色。必要。顏色是以
RGB 值和選用的 Alpha 管道。
這個值一律會以井字符號 (#) 字元開頭,後面接
Alpha-Red-Green-Blue 資訊,格式如下:
 
  - #RGB
- #ARGB
- #RRGGBB
- #AARRGGBB
 
- android:lStar
- 浮點值。選用。此屬性會修改基本顏色的感知亮度。這需要
介於 0 到 100 之間的浮點值,或是會解析為這類值的主題屬性。項目的
整體色彩的計算方式,是將基本顏色轉換為適合無障礙功能的顏色空間
並將 L* 設為 lStar屬性指定的值。範例:android:lStar="50"
 
- android:state_pressed
- 「布林值」。如果此項目是在輕觸物件時使用 (例如按鈕時),則為 "true"使用者輕觸或點選事件。如果是在預設的未輕觸狀態下使用,則為"false"。
- android:state_focused
- 「布林值」。如果此項目是在聚焦物件時使用 (例如按鈕時),則為 "true"醒目顯示文字。如果是預設項目,則為"false"。
非聚焦狀態
- android:state_selected
- 「布林值」。"true"如果此項目是在選取物件時使用,例如
分頁後如果是在未選取物件時使用,則為"false"。
- android:state_checkable
- 「布林值」。如果此項目可供勾選,則為 "true"。"false"表示
如果無法勾選物件,系統就會使用這個項目。只有當物件可以
在可勾選和不可勾選的小工具之間轉換。
- android:state_checked
- 「布林值」。如果此項目是在勾選物件時使用,則為 "true"。"false"(表示符合條件)
就會在物件取消選取時使用。
- android:state_enabled
- 「布林值」。如果此項目是在物件啟用狀態下使用,則為 "true",可以
接收觸控或點擊事件。如果是在物件停用時使用,則為"false"。
- android:state_window_focused
- 「布林值」。如果此項目是在應用程式視窗已聚焦時使用,則為 "true";
也就是
應用程式就在前景執行如果是在應用程式使用時,則為"false"視窗沒有焦點,例如通知欄向下拉或顯示對話方塊。
 注意:狀態清單中的第一個項目
就會與套用的物件目前狀態相符。因此,如果清單中的第一個項目包含
上述任何狀態屬性,則每次都會套用。因此,請將您的
預設值是最後一個值,如以下範例所示。 
 
- 例如:
- XML 檔案儲存在 res/color/button_text.xml:<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
          android:color="#ffff0000"/> <!-- pressed -->
    <item android:state_focused="true"
          android:color="#ff0000ff"/> <!-- focused -->
    <item android:color="#ff000000"/> <!-- default -->
</selector>以下版面配置 XML 會將顏色清單套用至 View:
 <Button
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/button_text"
    android:textColor="@color/button_text" />
- 另請參閱:
- 
 
    
  
  
    
      
      
    
    
      
    
    
  
       
    
    
      
    
  
  
  這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
  上次更新時間:2025-07-27 (世界標準時間)。
  
  
  
    
      [[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-27 (世界標準時間)。"],[],[]]