警报对话框文本颜色更改问题

时间:2018-07-06 12:55:30

标签: android colors textview android-alertdialog

我想在Alert对话框中更改文本颜色。我使用array.xml中的文本。我想在我的图片中使用这种橙色形状,将textcolor更改为白色。 这是我的 array.xml 文件代码:-

<resources>
<array name="bug_type">
    <item>
        {"id":\"1\", "type":\"Wrong Question\"}
    </item>
    <item>
        {"id":\"2\", "type":\"Wrong Answer\"}
    </item>
</array>

这是我的活动数据:-

AlertDialog.Builder(this, R.style.popuptheme)
            .setTitle("Select bug")
            .setPositiveButton("Ok") { dialog, whichButton ->
                if (bugTypeDialog.selectReportBugType.checkedRadioButtonId > 0) {
                    postBugReport(bugTypeDialog.selectReportBugType.checkedRadioButtonId.toString(), que_id)
                }
                Toast.makeText(this, "Bug Request has been send ..", Toast.LENGTH_LONG).show()
                dialog.dismiss()
            }
            .setNegativeButton("Cancel") { dialog, whichButton ->
                dialog.dismiss()
            }
            .setView(bugTypeDialog)
            .create()
            .show()
}

我希望这张图片Click here for show Bug image

中的所有textview为白色,例如橙色形状

3 个答案:

答案 0 :(得分:0)

您需要为警报对话框创建一个主题。检查一下:

http://blog.supenta.com/2014/07/02/how-to-style-alertdialogs-like-a-pro/

答案 1 :(得分:0)

在可绘制对象中创建textColorSelector

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:color="#0f0"/>
    <item android:state_checked="true" android:color="#fff"/>
    <item android:color="#00f"/>
</selector>

将此选择器应用于您的RadioButton。

<RadioButton
      ...
      android:textColor="@drawable/textColorSelector"
      />

答案 2 :(得分:0)

您有两种方法可以做到这一点

  1. 覆盖默认对话框。并在对话框上应用主题

    $('.btn').on('click', function(e)

,样式文件应类似于:

//1. create a dialog object 'dialog'
MyCustomDialog builder = new MyCustomDialog(getActivity(), "Exit", errorMessage); 
AlertDialog dialog = builder.setNegativeButton("OK", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialogInterface, int i) {
                    ...
                }

            }).create();
//2. now setup to change color of the button
dialog.setOnShowListener( new OnShowListener() {
    @Override
    public void onShow(DialogInterface arg0) {
        dialog.getButton(AlertDialog.BUTTON_NEGATIVE).setTextColor(Color.parseColor("#f34235"));
    }
}

dialog.show()
  1. 创建自己的自定义对话框

    <style name="AlertDialogCustom" parent="Theme.AppCompat.Light.Dialog.Alert">
        <item name="android:colorAccent">#0000FF</item>
    </style>