我使用Android Studio来实现导航抽屉,我无法获得用于显示我们当前要更改的部分的蓝色.
我尝试了很多东西,我目前正在使用listSelector,它看起来像:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="true" android:drawable="@color/selected" />
<item android:state_pressed="true" android:drawable="@color/highlight" />
</selector>
Run Code Online (Sandbox Code Playgroud)
我也试过了state_checked.state_pressed在这种情况下工作,但当前选择的项目仍然是蓝色.
编辑:我一直在研究这个,当创建适配器时,传递的上下文是getActionBar().getThemedContext()如此我想如果我能找到正确的属性来分配我的操作栏样式我可以从那里改变它.我尝试了几个不同的属性而没有运气.有谁知道确切的属性?
我也意识到我是否愿意
<item name="android:activatedBackgroundIndicator">@drawable/nav_listview_selector</item>
在我的主题和变化的主要部分getActionBar().getThemedContext()的getActivity.getBaseContext话,我可以改变颜色,但我不认为这是正确的方式.我认为应该使用主题背景.因此,如果有人知道activatedBackgroundIndicator可以放在哪里,那么它将被用于getActionBar.getThemedContext()
EDIT2:
因此,用于listview的文本视图是SDK中的一个,如下所示:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceListItemSmall"
android:gravity="center_vertical"
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
android:background="?android:attr/activatedBackgroundIndicator"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
/>
Run Code Online (Sandbox Code Playgroud)
所以我尝试修改"?android:attr/activatedBackgroundIndicator"主题级别,但它对选中/选中/激活没有效果,但它对按下有效.有人知道为什么吗?我怎么能改变它?