我必须显示带有动画的底部对话框,因为我使用了以下代码。
View view = getLayoutInflater().inflate(R.layout.layout_picker_bottom_sheet, null);
Dialog mBottomSheetDialog = new Dialog(this, R.style.MaterialDialogSheet);
mBottomSheetDialog.setContentView(view);
mBottomSheetDialog.setCancelable(true);
mBottomSheetDialog.getWindow().setLayout(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
mBottomSheetDialog.getWindow().setGravity(Gravity.BOTTOM);
mBottomSheetDialog.show();
对话样式
<!-- Bottom sheet style-->
<style name="MaterialDialogSheet" parent="@android:style/Theme.Dialog">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">true</item>
<item name="android:windowIsFloating">false</item>
<item name="android:windowAnimationStyle">@style/MaterialDialogSheetAnimation</item>
</style>
<!-- Animation-->
<style name="MaterialDialogSheetAnimation">
<item name="android:windowEnterAnimation">@anim/popup_show</item>
<item name="android:windowExitAnimation">@anim/popup_hide</item>
</style>
它运行良好,但在使用windowEnterAnimation
输入时重叠导航栏,并且在动画后放置在所需位置,没有任何问题。
如何在导入栏中启动对话框动画而不会在输入时重叠?
你可以看到它下面的用户界面正确放置,但是当它出来时它会动画导航。