全宽警报对话框按钮
Full width alert dialog buttons
我正在尝试让我的 AlertDialogs
看起来像这样,带有全宽按钮:
我正在关注 Google 的 documentation,它说要使用这种样式:
R.style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_FullWidthButtons
但我无法访问该主题:
我在项目的 Gradle 文件中添加了适当的依赖项:
implementation 'com.google.android.material:material:1.5.0'
我觉得我只是遗漏了一些明显的东西。
库中缺少主题覆盖的实现。
您可以通过以下方式自行定义它:
声明全宽按钮样式,例如:
<style name="Button.FullWidth" parent="Widget.MaterialComponents.Button.TextButton.Dialog">
<item name="android:layout_width">0dp</item>
<item name="android:layout_weight">1</item>
<item name="android:maxWidth">@null</item>
</style>
使用 full-width 按钮样式声明主题覆盖:
<style name="ThemeOverlay.MaterialComponents.MaterialAlertDialog.FullWidthButtons">
<item name="materialAlertDialogButtonSpacerVisibility">2</item>
<item name="buttonBarPositiveButtonStyle">@style/Button.FullWidth</item>
<item name="buttonBarNegativeButtonStyle">@style/Button.FullWidth</item>
<item name="buttonBarNeutralButtonStyle">@style/Button.FullWidth</item>
</style>
我正在尝试让我的 AlertDialogs
看起来像这样,带有全宽按钮:
我正在关注 Google 的 documentation,它说要使用这种样式:
R.style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_FullWidthButtons
但我无法访问该主题:
我在项目的 Gradle 文件中添加了适当的依赖项:
implementation 'com.google.android.material:material:1.5.0'
我觉得我只是遗漏了一些明显的东西。
库中缺少主题覆盖的实现。
您可以通过以下方式自行定义它:
声明全宽按钮样式,例如:
<style name="Button.FullWidth" parent="Widget.MaterialComponents.Button.TextButton.Dialog">
<item name="android:layout_width">0dp</item>
<item name="android:layout_weight">1</item>
<item name="android:maxWidth">@null</item>
</style>
使用 full-width 按钮样式声明主题覆盖:
<style name="ThemeOverlay.MaterialComponents.MaterialAlertDialog.FullWidthButtons">
<item name="materialAlertDialogButtonSpacerVisibility">2</item>
<item name="buttonBarPositiveButtonStyle">@style/Button.FullWidth</item>
<item name="buttonBarNegativeButtonStyle">@style/Button.FullWidth</item>
<item name="buttonBarNeutralButtonStyle">@style/Button.FullWidth</item>
</style>