Android 中对话框是突兀的出现的!
现在我们来为他增加一个动画效果吧!
先上效果图:
有效果了就直接上代码
View view = LayoutInflater.from(this).inflate(R.layout.loading,null);
AlertDialog dialog = new AlertDialog.Builder(MainActivity.this).setTitle("加载中...").setView(view).create();
Window window = dialog.getWindow();
window.setGravity(Gravity.CENTER); //此处可以设置dialog显示的位置
window.setWindowAnimations(R.style.mystyle); //添加动画
dialog.show();
其中动画其实就是R.style.mystyle来实现的
mystyle
<style name="mystyle" parent="android:Animation">
<item name="@android:windowEnterAnimation">@anim/dialog_enter</item> //进入时的动画
<item name="@android:windowExitAnimation">@anim/dialog_exit</item> //退出时的动画
</style>
dialog_enter(入场动画)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!--%p指相对于父容器-->
<translate android:fromYDelta="-100%p" android:duration="600"/>
</set>
dialog_exit(出场动画)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="800"
android:toYDelta="100%p" />
</set>