Android ListView with alternate color and on focus color
I need to set alternate color in list view rows but when i do that it removes/ disables the on focus default yellow background
I tried with backgroundColor rowView.setBackgroundColor(SOME COLOR);
also with backgrounddrwable.
rowView.setBackgroundColor(R.drawable.view_odd_row_bg);
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_window_focused="false"
android:drawable="@color/odd" />
<!--
Even though these two point to the same resource, have two states
so the drawable will invalidate itself when coming out of pressed
state.
-->
<item
android:state_focused="true"
android:state_enabled="false"
android:state_pressed="true"
android:drawable="@color/highlight" />
<item
android:state_focused="true"
android:state_enabled="false"
android:drawable="@color/highlight" />
<item
android:state_focused="true"
android:state_pressed="true"
android:drawable="@color/highlight" />
<item
android:state_focused="false"
android:state_pressed="true"
android:drawable="@color/highlight" />
<item
android:state_focused="true"
android:drawable="@color/highlight" />
</selector>
but it wont work.
is there any way we can set background color and on focus color simultaneously which w开发者_如何学运维ill work.
I found this tutorial to be very helpful for me.
http://ykyuen.wordpress.com/2010/03/15/android-%E2%80%93-applying-alternate-row-color-in-listview-with-simpleadapter/
I was able to make the ListView items have alternating colors plus the focused item kept the default highlighted color.
Put a transparency in your color, the yellow highlighting is still there, it is just behind your background color, a transparency will let it show through.
精彩评论