設置Listview 的選中背景效果 背景變藍字變白

 效果如圖

整體listView的佈局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/bg_list_item_normal"
    >
 <TextView
     android:layout_width="fill_parent"
     android:layout_height="48dp"
     android:text="@string/menu_text_person_center"
     android:textSize="22sp"
     android:layout_gravity="center"
     android:gravity="center"
     android:textStyle="bold"
     android:background="@drawable/bg_title_bar"
     android:textColor="@color/white"
    />
<ListView
 android:id="@+id/lv_function_list"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:scrollbarAlwaysDrawVerticalTrack="true"
 android:cacheColorHint="@null"                                                                    //去除listView 按下拖動時出現的黑色背景android:scrollbarTrackVertical="@drawable/scrollbar_vertical"
 android:divider="@null"                                                                                     //去除listView本身的分割線
 android:listSelector="@android:color/transparent"                                      //去除listView 點擊的系統背景色(變爲透明)
 /> 
  </LinearLayout>

listView   中item的佈局

<?xml version="1.0" encoding="utf-8"?>
<!-- 個人中心入口 -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
 android:gravity="center_vertical"
 android:id="@+id/ll_user_items"
 android:background="@drawable/search_result_list_click_state"           //爲item添加點擊效果 如圖但不包括字
    >
  <LinearLayout
   android:layout_width="fill_parent"
      android:layout_height="wrap_content"
   android:orientation="horizontal">
   <!-- 選擇項對應的標題 -->
   <TextView
       android:id="@+id/text1"
       android:layout_width="fill_parent"
       android:layout_height="40dp"
       android:layout_weight="1.0"
       android:gravity="center_vertical"
        style="@style/UserListViewItemStyle"                                                   //listview中字體點擊的顏色樣式
       android:paddingRight="5sp"
       android:paddingLeft="12dip"
       android:textSize="16sp"
       />
      <!-- 選擇項對應的詳細說明 -->
   <TextView
       android:id="@+id/text2"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:layout_weight="1.0"
        style="@style/ListItemDefaultTextViewStyle_Gray"
       android:paddingLeft="2sp"
       android:singleLine="true"
       android:paddingRight="5sp"
       android:layout_marginLeft="-25dp"
       android:textSize="12sp"
       />
  </LinearLayout>
  <ImageView android:id="@+id/childrendividerid" 
        android:layout_width="fill_parent" 
        android:layout_height="1dip" 
        android:background="@drawable/line"
        android:layout_marginTop="2dp"
            />
</LinearLayout>

listView   中item的佈局 background  中引用文件 

search_result_list_click_state.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/bg_list_item_foucs" />
    <item android:state_focused="true" android:drawable="@drawable/bg_list_item_foucs" />
    <item android:state_selected="true" android:drawable="@drawable/bg_list_item_foucs" />
    <item android:drawable="@drawable/bg_list_item_normal" />
</selector>

listview中字體點擊的顏色樣式

<?xml version="1.0" encoding="utf-8"?>
<style name="UserListViewItemStyle">
        <item name="android:textColor">@drawable/user_list_item_textview_color</item>         //點擊字體後字體的變化效果
        <item name="android:textSize">20sp</item>
        <item name="android:textStyle">bold</item>
    </style>

 <style name="ListItemDefaultTextViewStyle_Gray">
        <item name="android:textColor">@drawable/list_item_textview_color_default_gray</item>
        <item name="android:textSize">15sp</item>
        <item name="android:textStyle">bold</item>
    </style>

</resources>

 

點擊字體後字體的變化效果  user_list_item_textview_color.xml

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

    <item android:color="@color/white" android:state_pressed="true"/>
    <item android:color="#3d3d3d" android:state_enabled="true"/>

</selector>

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

    <item android:color="#616161" android:state_enabled="true" android:state_window_focused="false"/>
    <item android:color="#616161" android:state_enabled="false" android:state_window_focused="false"/>
    <item android:color="@color/white" android:state_pressed="true"/>
    <item android:color="#616161" android:state_enabled="true"/>

</selector>

 

第一次 發表文章 代碼有點問題 主要是記下思路 寫的不好請擔待。


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章