1

这就是我的 NavigationDrawer 列表项的定义方式。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    style="?android:attr/spinnerDropDownItemStyle"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" 
    android:padding="15dp">

    <ImageView
        android:id="@+id/drawer_list_item_icon"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:adjustViewBounds="true" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:gravity="center_vertical|left"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/drawer_list_item_title"
            style="?android:attr/spinnerDropDownItemStyle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ellipsize="end"
            android:textColor="#00FFFF"
            android:singleLine="true" />

        <TextView
            android:id="@+id/drawer_list_item_subtitle"
            style="?android:attr/spinnerDropDownItemStyle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ellipsize="end"
            android:singleLine="true"
            android:textAppearance="?android:attr/textAppearanceSmall" />
    </LinearLayout>

</LinearLayout>

我正在使用 ActionBarSherlock 库以及SherlockNavigationDrawer

在我的 Android 4.3 设备上一切正常。

但是在我的 2.3.3 设备中,我遇到了一个奇怪的问题。

这是初始 NavigationDrawer 的外观。

在此处输入图像描述

问题场景:我按住任何listItem,然后向上或向下拖动我的手指(同时仍然按住)朝向另一个listItem。

这就是发生这种情况的时候。

在此处输入图像描述

所有 listItems 都以白色突出显示并且一直保持不变,除非以正常方式单击另一个 listItem(即使我关闭并重新打开 NavDrawer,整个列表仍然以白色突出显示)。

不过,这在 Android 4.3 中不会发生。

它只发生在 Android 2.3.3 中(可能发生在所有 pre-ICS 设备上)。

兼容性库有问题吗?

这是我在 values-v11 文件夹中唯一的附加代码,因为“activatedBackgroundIndicator”在 Android 2.3 中不可用。

<resources>
    <style name="listViewActivatedStyle">
        <item name="android:background">?android:attr/activatedBackgroundIndicator</item>
    </style>
</resources>

Android 2.3 无法访问上述代码。这是它给出这个问题的原因吗?还是兼容性库中存在错误?

任何建议将不胜感激。

4

1 回答 1

5

尝试添加

android:cacheColorHint="@null"

到列表

于 2013-09-25T19:56:33.457 回答