public SelectPhotoDialog createMyDialog() {
SelectPhotoDialog dialog = new SelectPhotoDialog(context, R.style.photo_dialog_style);
dialog.addContentView(view, new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
dialog.setContentView(view);
Window dialogWindow = dialog.getWindow();
dialogWindow.setGravity(Gravity.BOTTOM);
dialogWindow.setWindowAnimations(R.style.photo_dialog_animation); // 添加动画
dialog.setCanceledOnTouchOutside(true);
return dialog;
}
<style name="photo_dialog_animation" parent="android:Animation">
<item name="android:windowEnterAnimation">@anim/bottom_dialog_show</item>
<item name="android:windowExitAnimation">@anim/bottom_dialog_hide</item>
</style>
bottom_dialog_show
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromYDelta="100%p"
android:toYDelta="0%p"
android:duration="300"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/>
</set>
bottom_dialog_hide
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromYDelta="0%p"
android:toYDelta="100%p"
android:duration="300"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/>
</set>