2012-01-04 78 views
0

我在android中工作。Android:更改列表行的顏色

我有一個地方的清單。我希望每當我點擊這個列表中的一個地方。然後,該選定行的顏色應該短時間更改爲藍色,以便看起來被點擊。

這就是我想要的代碼: -

mListView.setOnItemClickListener(new OnItemClickListener() 

     { 

     @Override 

     public void onItemClick(AdapterView<?> parent, View view, int position, long duration) 

      { 

      view.setBackgroundResource(R.drawable.fsq_custom_background); 
      } 


     } 

這是fsq_custom_background.xml存儲在繪製文件夾: -

<?xml version="1.0" encoding="utf-8"?> 


     <selector xmlns:android="http://schemas.android.com/apk/res/android"> 


<item 

    android:state_pressed="true" 

    android:state_enabled="true" 

    android:drawable="@drawable/the_background_color" /> 


    </selector> 

這是the_background_color.xml: -

<?xml version="1.0" encoding="UTF-8"?> 


    <shape xmlns:android="http://schemas.android.com/apk/res/android"> 

<solid android:color="#FF1212" /> 

</shape> 

但所選行的顏色仍未更改。請幫我解決我犯的錯誤。 非常感謝。

回答

1

首先從onItemClick中刪除改變bg顏色的代碼。 要執行更有價值的操作,而不僅僅是更改列表行的顏色。

您可以在XML文件中提供,你必須使你的ListView對象:

<的ListView

機器人:listSelector = 「」

..... />

您可以將其作爲xml中列表行佈局的背景提供。