【问题标题】:Change Color for Positive and Negative Button and Spacing更改正负按钮和间距的颜色
【发布时间】:2020-07-31 19:06:08
【问题描述】:

我正在努力使.setPositiveButton.setNegativeButton 彼此分开更远。另外,我正在尝试将.setPositiveButton.setNegativeButton 的文本颜色设置为不同。我知道当我更改 colorAccent 时,它会更改 .setPositiveButton.setNegativeButton 的两种颜色。感谢您提供任何帮助。

MainActivity.kt

 class MainActivity : AppCompatActivity() {
    
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_main)
    
            btn_delete.setOnClickListener {
                val dialogBuilder = AlertDialog.Builder(this, R.style.AlertDialogStyle)
                dialogBuilder.setMessage("Test.")
    
                    .setCancelable(false)
                    .setPositiveButton("END", DialogInterface.OnClickListener {
                            dialog, id -> dialog.cancel()
                    })
                    .setNegativeButton("Keep Ticket", DialogInterface.OnClickListener {
                            dialog, id -> dialog.cancel()
                    })
    
                val alert = dialogBuilder.create()
    
                val title = TextView(this)
                title.text = "WARNING"
                title.setPadding(15, 45, 15, 0)
                title.gravity = Gravity.CENTER
                title.setTextColor(Color.WHITE)
                title.textSize = 20f
                alert.setCustomTitle(title)
    
                // show alert dialog
                alert.show()
                alert.window?.setBackgroundDrawableResource(android.R.color.black)
            }
    }
    }

styles.xml

<resources>
 <style name="AlertDialogStyle" parent="Theme.AppCompat.Light.Dialog">
        <item name="android:colorAccent">#FF0000</item>
        <item name="android:textColor">#f3f3f3</item>
        <item name="android:textColorPrimary">#f3f3f3</item>
    </style>
</resources>

【问题讨论】:

标签: android android-layout android-alertdialog


【解决方案1】:

在显示对话框之前试试这个

alert.show()

val negativeBTN: Button = alert.getButton(DialogInterface.BUTTON_NEGATIVE)
negativeBTN.setTextColor(resources.getColor(R.color.colorName))

val positiveBTN: Button = alert.getButton(DialogInterface.BUTTON_POSITIVE)
positiveBTN.setTextColor(resources.getColor(R.color.colorName))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-29
    • 2021-11-05
    • 1970-01-01
    • 1970-01-01
    • 2020-08-03
    • 2014-07-11
    相关资源
    最近更新 更多