2017-03-14 61 views
1

我有一個回收視圖和網格佈局管理that.For充氣以回收視圖佈局項目我設置背景顏色像這樣回收站查看項目不改變其顏色

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:clickable="true" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/regNo" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.9" 
     android:background="@drawable/student_li_bgcolor" 
     android:gravity="center" 
     android:padding="7dp" 
     android:clickable="true" 
     android:text="15BEC0584" 
     android:textColor="#64DD17" 
     android:textSize="17dp" /> 

</LinearLayout> 

student_li_bgcolor的含量這

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

    <item 
     android:state_selected="true"> 
     <shape> 
      <solid 
       android:color="#64DD17" 
       /> 
     </shape> 
    </item> 
    <item 
     android:state_pressed="true" 
     > 
     <shape> 
      <solid 
       android:color="#ffffff" 
       /> 
     </shape> 
    </item> 
    <item 
     android:state_selected="false" 
     > 
     <shape> 
      <solid 
       android:color="#ffffff" 
       /> 
     </shape> 
    </item> 
</selector> 

我想達到什麼目的是改變項目的顏色爲綠色,如果用戶至少按下它。

有了這個代碼

<item 
     android:state_pressed="true" 
     > 
     <shape> 
      <solid 
       android:color="#ffffff" 
       /> 
     </shape> 
    </item> 
    <item 
     android:state_pressed="false" 
     > 
     <shape> 
      <solid 
       android:color="#ffffff" 
       /> 
     </shape> 
    </item> 

我能夠改變背景顏色click.But其儘快它。我上刪除用戶手指不想要that.Please幫我恢復到其原來的顏色...在此先感謝...

回答

0

如果您想永久更改背景色,您應該添加一個OnClickListener並在OnClickListener.onClick()中執行此操作。

<selector>只是一個狀態列表資源,根據按鈕的當前狀態改變外觀。如何使用onClickListener請參考this

我很高興,如果它可以幫助。

+0

我已經嘗試使用view.setBackground(Color.parseColor(「#000000」))其中視圖是我們在recyclerview viewHolder之一得到的一個 – bharath

+0

但它對我無用 – bharath

+0

你可以顯示你的代碼onClickListener ),以便我可以嘗試並給你一些反饋。 – Paul