首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Android ListFragment 文本顏色不生效:ID 匹配是關鍵

     編輯:程式設計綜合問答

問題

使用 SimpleCursorAdapter 綁定數據到 ListFragment,XML 佈局中設置 android:textColor="#000000" 無效,文本仍為白色(與背景同色)。

原因

Adapter 構造函數映射關係錯誤:

String[] from = {DBConstants.COL_FAMILY_NAME};
int[] to = {android.R.id.text1};  // 系統預置 ID

但自定義佈局 R.layout.simple_spinner_drop_down_view 中的 TextView ID 是 @+id/spinnerItemText,與 android.R.id.text1 不匹配,導致 Adapter 找不到目標視圖,文本顏色屬性不生效。

修正

int[] to = {R.id.spinnerItemText};  // 使用自定義佈局中的真實 ID

或將佈局中 TextView 的 ID 改為 @android:id/text1(不推薦,語義不清)。

驗證

修正後 setListAdapter(adapter),文本顏色將按 XML 顯示。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved