android学习-对话框的动画弹出和动画消失

这篇博客主要介绍了如何在Android中实现对话框的动画弹出和消失,通过自定义AlertDialog并结合Window类,利用anim资源文件中的动画效果提升用户体验。文章提供了详细的代码示例和步骤。
摘要由CSDN通过智能技术生成

由于android的对话框不是一个View所以它没有setAnimation()这个方法,上网找了很多资料,好多都说的不完整或是抄人家的文章代码,这里我将我的理解总结如下,以后用到这方面的知识的时候以便查阅。

这里要实现一个自定义的对话框,在弹出和消失的过程中使用动画,这样用户的使用体验要好一点。还是先来总结一下需要用到的类:

AlertDialog:提示框

Window:这个类太强大了,现在我还啃不动它

上代码! 主Activity的代码

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;

public class UserGuideActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
	//捕捉返回按钮
	if(keyCode == KeyEvent.KEYCODE_BACK){
		final AlertDialog dialog = new AlertDialog.Builder(this).create();
		dialog.show();
		// 用Window类来设置对话框的布局文件	
		Window win = dialog.getWindow();
		win.setContentView(R.layout.exit_dialog_layout);
		win.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND) ;// 显示对话框时,后面的Activity不变暗,可选操作。
		win.setWindowAnimations(R.style.dialogWindowAnim);// 这里就是指定动画的操作
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值