如何在 android 对话框片段中将特定文本参数设为粗体

How can I make specific text argument bold in android dialog fragment

我想在给定以下字符串的情况下将消息参数文本加粗 file.how 我可以吗?

代码如下:

<string name="meter_reading_dialog_message">Current Reading: %s m³ \nPrevious Reading: %s m³ \nConsumption Reading: %s m³</string>

override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
        val toCurrentReading =
            requireArguments().getString(CURRENT_READING)
        val toPreviousReading =
            requireArguments().getString(PREVIOUS_READING)
        val toConsumption =
            requireArguments().getString(CONSUMPTION)

        return AlertDialog.Builder(requireContext())
            .setTitle(getString(R.string.confirmation_reading))
            .setMessage(
                getString(
                    R.string.meter_reading_dialog_message,
                    toCurrentReading,
                    toPreviousReading,
                    toConsumption
                )
            )
            .setPositiveButton(R.string.deactivate_save) { _, _ ->
                targetFragment?.onActivityResult(targetRequestCode, Activity.RESULT_OK, null)
            }
            .setNegativeButton(android.R.string.cancel) { _, _ ->
                targetFragment?.onActivityResult(targetRequestCode, Activity.RESULT_CANCELED, null)
            }
            .create()
    }

我想你可以根据自己的情况使用它。

你先用它定义一个字符串。

val mystring = getString(
                    R.string.meter_reading_dialog_message,
                    toCurrentReading,
                    toPreviousReading,
                    toConsumption
                )

之后,您可以像本例一样设置粗体值。

How to set part of text to bold when using AlertDialog.setMessage() in Android?

你可以使用这个方法。

fun boldText(text: String) : String {
  return Html.fromHtml(text)
}


println(boldText("<b>This text bold.</b> This text normal."))

输出=> 这段文字加粗。这段文字正常。