Dialog动画与Activity进入退出的动画有些相似,主要是通过在onCreate方法中调用window.setWindowAnimations方法完成。例如需求Dialog显示在屏幕的右侧,需要添加一个右进右出的动画,代码如下:
- Java代码
Public class MyDialog extends Dialog {
@Override
protected void onCreate(Bundle savedInstanceState) {
Window window = this.getWindow();
if (window != null) {
//设置动画
window.setWindowAnimations(R.style.right_in_right_out_anim);
}
}
}
-
在style.xml中添加一项
-
在res/anim文件夹中添加两个动画文件
right_in_anim.xml 显示动画
right_out_anim 消失动画
到这里Dialog的动画就添加完成了,想看效果的同学可以自己仿照上述例子编写代码试试看。