问题描述
我可以通过java在屏幕底部设置DialogFragment,
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
setStyle(STYLE_NO_TITLE,R.style.DialogBottom);
Dialog dialog = super.onCreateDialog(savedInstanceState);
Window window = dialog.getWindow();
if (window != null) {
window.setGravity(Gravity.BOTTOM);
}
return dialog;
}
但是我想通过xml来设置它,例如:
<style name="DialogBottom" parent="Theme.AppCompat.Dialog.Alert">
<item name="android:windowBackground">@null</item>
<item name="android:windowMinWidthMinor">100%</item>
<item name="android:windowMinWidthMajor">100%</item>
<!--which attr can set Dialog in screen bottom ???-->
</style>
但是我不知道哪个属性...
解决方法
不幸的是,XML无法做到这一点。 BottomSheetDialog
类是为此目的而设计的。
您可以在这篇中级帖子中了解如何使用它:https://medium.com/@wise4rmgodadmob/a-simple-example-of-using-bottomsheetdialog-in-android-development-using-kotlin-152be3b29737