0

I would like to make the message arguments text bold given the following string file.how can i make it?

code is given blow:

<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()
    }
Sagar gujarati
  • 152
  • 1
  • 15

2 Answers2

0

I think you can use this for your situation.

you first define a string with it.

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

After that, you can set bold value like in this example.

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

mrtcnkryln
  • 324
  • 2
  • 15
0

You can use this method.

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


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

output=> This text bold. This text normal.