Android 无法设置主/细节片段ICS 4.0中激活的列表项

Android 无法设置主/细节片段ICS 4.0中激活的列表项,android,android-layout,android-fragments,android-listfragment,Android,Android Layout,Android Fragments,Android Listfragment,我正在尝试使用主/细节(片段)布局开发应用程序,但我面临一个奇怪的问题,即当我添加自己的listview适配器时,单击/选择时listview项的激活停止工作 默认情况下提供的带有虚拟数据的代码为 setListAdapter(new ArrayAdapter<DummyContent.DummyItem>( getActivity(), android.R.layout.simple_list_item_activated_1, android.R.id

我正在尝试使用主/细节(片段)布局开发应用程序,但我面临一个奇怪的问题,即当我添加自己的listview适配器时,单击/选择时listview项的激活停止工作

默认情况下提供的带有虚拟数据的代码为

  setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(
      getActivity(), android.R.layout.simple_list_item_activated_1,
      android.R.id.text1, DummyContent.ITEMS));

现在,当我单击listview项目时,它会高亮显示,并且不会保持持久性。

如果您使用的是自定义布局,请确保设置的背景是正确的,可绘制的:

android:background="?android:attr/activatedBackgroundIndicator"
如果要自定义指示器的样式,则必须定义自己的
StateListDrawable
xml:

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

   <item android:drawable="@color/red" android:state_pressed="true"/>
   <item android:drawable="@color/blue" android:state_selected="true"/>
   <item android:drawable="@color/green" android:state_activated="true"/>

</selector>


并将其指定为行布局背景。

如果使用自定义布局,请确保您的背景设置正确可绘制:

android:background="?android:attr/activatedBackgroundIndicator"
如果要自定义指示器的样式,则必须定义自己的
StateListDrawable
xml:

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

   <item android:drawable="@color/red" android:state_pressed="true"/>
   <item android:drawable="@color/blue" android:state_selected="true"/>
   <item android:drawable="@color/green" android:state_activated="true"/>

</selector>


并将其指定为您的行布局背景。

您是否对该行使用自定义布局?是的,我正在使用自定义布局您是否对该行使用自定义布局?是的,我正在使用自定义布局