最近在使用Android的ListView时发现点击其子项后,虽然瞬间会有高亮效果,但其效果并不能保留,尤其是点击触发进一步操作,例如打开新的Activity再返回,这样的高亮就完全消失了。
经过研究,发现篇文章比较有借鉴意义:http://android-codes-examples.blogspot.com/2011/03/customized-listview-items-selection.html
进一步,深入探究android.R.layout.simple_list_item_activated_1,发现实现这个功能其实可以非常简单,可以这样实现:
1) 在res\drawable下定义一个文件,例如list_item_backgroud.xml如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:color/background_light" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@android:color/background_dark" android:state_pressed="true"/>