Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Appcompact DialogFragment单选复选标记颜色_Android_Android Appcompat_Picker_Dialogfragment - Fatal编程技术网

Android Appcompact DialogFragment单选复选标记颜色

Android Appcompact DialogFragment单选复选标记颜色,android,android-appcompat,picker,dialogfragment,Android,Android Appcompat,Picker,Dialogfragment,我有个问题。我的活动很有风格 <style name="MaterialTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorPrimary">@color/action_bar_background</item> <item name="colorPrimaryDark">@color/action_bar_background</item

我有个问题。我的活动很有风格

<style name="MaterialTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/action_bar_background</item>
    <item name="colorPrimaryDark">@color/action_bar_background</item>
    <item name="colorAccent">@color/action_bar_background</item>
</style>

如何更改选择器复选标记(绿色圆圈)的颜色???

您可以通过
AlertDialog.Builder.setSingleChoiceItems(ListAdapter,int,OnClickListener)中的
ListAdapter
参数引用自定义单选按钮

这篇文章中的答案明确了细节:


有关创建自定义组件的帮助,请查看:

您必须为
AlertDialog

<style name="MaterialThemeDialog" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="colorAccent">@color/action_bar_background</item>
</style>
1) 创建一个新的xml,其中checkMark是checkMark的样式和动画,checkMarkTint是checkMark的颜色

<CheckedTextView 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:ellipsize="marquee"
android:gravity="center_vertical"
android:paddingEnd="16dip"
android:layout_marginTop="10dp"
android:paddingStart="16dip"
android:textSize="14sp"
android:checkMark=""="?android:attr/listChoiceIndicatorSingle"
android:checkMarkTint="@color/your_checkmark_color"
android:textColor="@color/your_text_color" />

没问题。如果你被卡住了,告诉我
@Override
public Dialog onCreateDialog(final Bundle savedInstanceState) {
    final AlertDialog.Builder dialog = new AlertDialog.Builder(
            getActivity(),
            R.style.MaterialThemeDialog);
    dialog.setTitle(R.string.image_resolution);
    dialog.setSingleChoiceItems(R.array.quality_labels, getPosition(), this);
    return dialog.create();
}
<CheckedTextView 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:ellipsize="marquee"
android:gravity="center_vertical"
android:paddingEnd="16dip"
android:layout_marginTop="10dp"
android:paddingStart="16dip"
android:textSize="14sp"
android:checkMark=""="?android:attr/listChoiceIndicatorSingle"
android:checkMarkTint="@color/your_checkmark_color"
android:textColor="@color/your_text_color" />
ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(getApplicationContext(),R.layout.your_custom_layout, charSequenceList);
alerDialog.setSingleChoiceItems(adapter, -1, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialogInterface, int i) {
                    //.. 

            });