当我使用dialog.builder时,字体大小正确,但是当我使用MaterialAlertDialogBuilder时,正文文本的字体大小较小。可以吗?
implementation 'com.google.android.material:material:1.1.0-alpha06'
我使用此主题
<style name="AppTheme" parent="Theme.MaterialComponents.Light">
MaterialComponent代码
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()
问题出在哪里?
答案 0 :(得分:0)
您可以这样解决:
@ style / ThemeOverlay.MyApp.Dialog
@ dimen / dp_4 @ dimen / dp_2 ...
答案 1 :(得分:0)
您需要使用MaterialAlertDialogBuilder
而不是AlertDialog.Builder
。
MaterialAlertDialogBuilder(this)
.setMessage("This is a test of AlertDialog.Builder")
.setPositiveButton("Ok", null)
.show()
答案 2 :(得分:0)
这是故意的。他们使用不同的样式。
您可以使用以下方式更改它:
<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>
然后:
new MaterialAlertDialogBuilder(this,
R.style.Body_ThemeOverlay_MaterialComponents_MaterialAlertDialog)
.setTitle("Title")
.setMessage("Message......")
...
.show();