ios的对话框是 位于 屏幕底部的 这个和Android dialog 为与屏幕中间不同 用过小米手机 童鞋都应该知道 小米的对话框就是模仿了 ios的风格
在Android的应用中想要实现这样对话框风格也很简单 只要两个步骤即可:
第一步 :获得显示的窗口:
dialog 在Android中是层级比较高的窗口 属于系统窗口 要想对窗口添加动画效果 必须要获得该窗口
Window window = dialog.getWindow();
window.setGravity(Gravity.BOTTOM); //设置dialog显示的位置
第二步:设置动画效果:
window.setWindowAnimations(R.style.mystyle);
动画效果分为两个部分一个是进入动画一个退出动画 只需要做Y坐标的平移即可。
<?xml version="1.0" encoding="utf-8"?> <resources>
<style name="mystyle" parent="android:Animation">
<item name="@android:windowEnterAnimation">@anim/dialog_enter</item> //进入平移的动画 <item name="@android:windowExitAnimation">@anim/dialog_exit</item> //退出平移动画
</style>
</resources>
动画XML布局如下
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="100%p" 相对于父容器的比例大小
android:duration="600" />
</set>
alpha 透明度 rotate 旋转 scale 缩放 有需要的可以进行一些动画的聚合 实现多种动画的效果