activateBackgroundIndicator无法处理ListView项目

时间:2013-03-17 12:51:07

标签: android android-listview actionmode

我知道我们可以使用android:background="?android:attr/activatedBackgroundIndicator"来确保在“激活”时突出显示视图。我在一些项目中使用过这个项目并且效果很好;但是,使用与以前非常相似的代码,似乎对我不起作用,因为通过ActionMode选择时,项将保持突出显示。

这是ListView项目:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?android:attr/activatedBackgroundIndicator"
android:dividerPadding="16dp"
android:orientation="horizontal"
android:divider="?android:attr/dividerHorizontal"
android:showDividers="middle"
android:minHeight="64dp" >

<ImageView
    android:id="@id/drag_handle"
    android:layout_width="48dp"
    android:layout_height="48dp"
    android:layout_gravity="center_vertical"
    android:padding="8dp"
    android:src="?attr/action_drag" />

<TextView
    android:id="@+id/item_text"             
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_vertical"
    android:ellipsize="marquee"
    android:maxLines="2"
    android:paddingRight="8dp"
    android:paddingLeft="8dp"
    android:textAppearance="?android:attr/textAppearanceMedium" />


</LinearLayout>

这是实际的ListView布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.lazybits.sidekick"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<com.mobeta.android.dslv.DragSortListView
    android:id="@android:id/list"
    android:drawSelectorOnTop="true"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:collapsed_height="2dp"
    app:drag_enabled="true"
    app:drag_handle_id="@id/drag_handle"
    app:drag_scroll_start="0.33"
    app:drag_start_mode="onDown"
    app:float_alpha="0.6"
    app:float_background_color="?attr/bg_drag_item"
    app:max_drag_scroll_speed="0.5"        
    app:slide_shuffle_speed="0.3"
    app:use_default_controller="true" />

<TextView
    android:id="@android:id/empty"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:textSize="22sp"
    android:gravity="center_vertical|center_horizontal"
    android:text="@string/no_tasks" />

</LinearLayout>

请注意我确实尝试过使用android:drawSelectorOnTop="true",但没有任何区别。

ActionMode选择了正在选择项目的事实,因为我有一个Log事件告诉我,我设置ActionMode的标题以显示所选项目的数量;但是,即使它们被“激活”,这些项目也不会保持“突出显示”。

这是一个快速image的ActionMode工作,但项目没有突出显示。

0 个答案:

没有答案