Размер текста для setMessage в AlertDialog
Как указать размер текста для setMessage в AlertDialog не используя стили, желательно через dimen прямо в коде.
val builder = AlertDialog.Builder(this)
with(builder)
{
setMessage(R.string.overwrite)
setTitle(R.string.title)
setIcon(R.drawable.icon)
setPositiveButton(
resources.getText(R.string.yes_mes),
DialogInterface.OnClickListener(function = positiveButtonClick)
)
setNegativeButton(
resources.getText(R.string.no_mes),
DialogInterface.OnClickListener(function = negativetiveButtonClick)
)
show()
}
Ответы (2 шт):
Автор решения: Alex_Skvortsov
→ Ссылка
Есть несколько костыльное решение через поиск TextView по id:
val builder = AlertDialog.Builder(this)
var dialog: AlertDialog? = null
with(builder)
{
setMessage(R.string.overwrite)
setTitle(R.string.title)
setIcon(R.drawable.icon)
setPositiveButton(
resources.getText(R.string.yes_mes),
DialogInterface.OnClickListener(function = positiveButtonClick)
)
setNegativeButton(
resources.getText(R.string.no_mes),
DialogInterface.OnClickListener(function = negativetiveButtonClick)
)
dialog = show()
}
val textView = dialog.findViewById(android.R.id.message) as? TextView;
textView?.setTextSize(40);
Обратите внимание, что изменение размера текста должно происходить строго после того, как был вызван метод show!
Автор решения: s.kluikov
→ Ссылка
Alex_Skvortsov, спасибо! Я несколько исправил и скорректировал ваш код, что бы TextSize брался из dimen
val builder = AlertDialog.Builder(this)
var dialog: AlertDialog? // = nul
with(builder)
{
setMessage(R.string.overwrite)
setTitle(R.string.title)
setIcon(R.drawable.icon)
setPositiveButton(
resources.getText(R.string.yes_mes),
DialogInterface.OnClickListener(function = positiveButtonClick)
)
setNegativeButton(
resources.getText(R.string.no_mes),
DialogInterface.OnClickListener(function = negativetiveButtonClick)
)
dialog = show()
}
val textView = dialog?.findViewById(android.R.id.message) as? TextView
textView?.setTextSize(
TypedValue.COMPLEX_UNIT_PX,
resources.getDimension(R.dimen.alertText_size)
)