我有一个android应用程序,在它中我有一个列表视图,选择模式设置为多个。我已将布局设置为simple_list_item_multiple_choice。它在行的右侧给出复选框。更改多项选择列表项复选框色调
但问题出在这些:这些复选框的按钮色调是可怕的蓝色(这远离我的应用程序配色方案)。无论我做什么,我都无法改变它。
我已经尝试过:为CheckBox创建样式并为CheckedTextView创建样式,并在那里更改各种按钮色调和颜色重音。
没有效果。 我该怎么办?
一块布局:
...
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/listView1"
android:layout_weight="1"
android:choiceMode="singleChoice" /> ...
一块的活动代码:
ArrayAdapter<String> adapter = new ArrayAdapter<>(getApplicationContext(),
android.R.layout.simple_list_item_multiple_choice, players);
itemsList.setAdapter(adapter);
解决方案我已经试过:
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:colorPrimary">@color/MainColor</item>
<item name="android:colorAccent">@color/colorAccent</item>
<item name="android:textColor">@color/MainColor</item>
<item name="colorAccent">@color/MainColor</item>
<item name="colorPrimary">@color/MainColor</item>
<item name="android:checkboxStyle">@style/CheckBoxStyle</item>
<item name="android:checkedTextViewStyle">@style/CheckedTextViewStyle</item>
</style>
<style name="CheckBoxStyle" parent="AppTheme">
<item name="android:tint">@color/colorAccent</item>
<item name="android:buttonTint">@color/colorAccent</item>
</style>
<style name="CheckedTextViewStyle" parent="AppTheme">
<item name="android:colorButtonNormal">@color/colorAccent</item>
<item name="android:checkMarkTint">@color/colorAccent</item>
<item name="android:tint">@color/colorAccent</item>
<item name="android:buttonTint">@color/colorAccent</item>
<item name="android:colorAccent">@color/colorAccent</item>
</style>
UPD:另外,如果有人知道如何要实现这个没有复选框,但也没有创建一个无用的自定义适配器,我也会接受这个答案。
但是怎么办我将默认的android行布局中的自定义drawable应用于复选框?我想它涉及到创建一个完整的自定义适配器,我试图避免:( –