How to use MaterialAlertDialogBuilder fine?
12,069
Solution 1
It is intentional. They are using different styles.
You can change it using something like:
<style name="Body_ThemeOverlay.MaterialComponents.MaterialAlertDialog" parent="@style/ThemeOverlay.MaterialComponents.MaterialAlertDialog">
<item name="materialAlertDialogBodyTextStyle">@style/BodyMaterialAlertDialog.MaterialComponents.Body.Text</item>
</style>
<style name="BodyMaterialAlertDialog.MaterialComponents.Body.Text" parent="MaterialAlertDialog.MaterialComponents.Body.Text">
<item name="android:textColor">@color/colorAccent</item>
<item name="android:textAllCaps">true</item>
<item name="android:textSize">16sp</item>
<item name="android:textStyle">bold</item>
</style>
and then:
new MaterialAlertDialogBuilder(this,
R.style.Body_ThemeOverlay_MaterialComponents_MaterialAlertDialog)
.setTitle("Title")
.setMessage("Message......")
...
.show();
Solution 2
You can solve like this:
<item name="materialAlertDialogTheme">@style/ThemeOverlay.MyApp.Dialog</item>
<style name="ThemeOverlay.MyApp.Dialog" parent="@style/ThemeOverlay.MaterialComponents.Dialog">
<item name="android:dialogCornerRadius" tools:targetApi="p">@dimen/dp_4</item>
<item name="android:paddingBottom">@dimen/dp_2</item>
...
</style>
Solution 3
You need to use MaterialAlertDialogBuilder
instead of AlertDialog.Builder
.
MaterialAlertDialogBuilder(this)
.setMessage("This is a test of AlertDialog.Builder")
.setPositiveButton("Ok", null)
.show()
Related videos on Youtube
Author by
Rulogarcillan
Updated on June 04, 2022Comments
-
Rulogarcillan almost 2 years
When i use dialog.builder the font size is correct but when i use MaterialAlertDialogBuilder the font size of body text is smaller. its ok?
implementation 'com.google.android.material:material:1.1.0-alpha06'
Im use this theme
<style name="AppTheme" parent="Theme.MaterialComponents.Light">
MaterialComponent code
MaterialAlertDialogBuilder(this) .setMessage("This is a test of MaterialAlertDialogBuilder") .setPositiveButton("Ok", null) .show()
AlertDialog.Builder
AlertDialog.Builder(this) .setMessage("This is a test of AlertDialog.Builder") .setPositiveButton("Ok", null) .show()
Where is the problem?
-
Vikas Patidar over 3 yearsOP is already using the
MaterialAlertDialogBuilder
-
chrisonline over 3 years@VikasPatidar OP?