Android轻松搞定Dialog提示动画效果
抽个中午的时间写一篇博客,想必大家现在正在午饭呢吧,深圳的天气真是变换无常,刚刚大雨倾盆,不一会就晴天高照。打球吗?约起来哇,哈哈。。
今天给大家带来一篇Dialog提示附加动画效果的功能。这种Dialog提示效果基本变成了每个App都必不可少功能。例如,退出提示,弹出分享框,App升级提示等等。。
其实在Android中实现提示功能由很多种方式:自定义Dialog,AlertDialog,自定义ViewGroup,DialogFragment等等。
Google在新版本中不推荐使用Dialog了(Dialog的坑不少,例如抢夺焦点,必须自己处理返回事件等等),本篇内容实现的功能基于Android3.0之后推出的DialogFragment。
关于DialogFragment的使用在这里就不做多的介绍了,入门的文章大家可以看hongyang的:
Android 官方推荐 : DialogFragment 创建对话框
首先,看下我们今天要实现的效果:想必大家肯定见过这种类似的效果吧。哈哈,怎么样?是不是比普通的Dialog显示要nice狠多。下面我们就来一步步实现。
既然使用DialogFragment,那么我们就需要自定义先DialogFragment,并继承自DialogFragment,实现onCreateView方法或者onCreateDialog。这里我们实现的是onCreateView方法。下面来看核心的代码:
DialogFragment和Fragment有相同的生命周期:
(1)在onStart方法中我们首先去声明要加载的动画文件,并设置到window的windowAnimations属性上。
(2)在onCreateView方法中,去掉了默认的提示框背景色(设置为透明),并去掉默认的标题,然后加载我们自己的布局文件。
接着我们来看动画Style:
很简单,就是定义了显示和退出的动画。
到此为止,关于动画的设置就完成了。接着我们就可以显示DiaFragment了:
到此,我们就轻松实现了上面的效果啦。关于定义的动画anim,大家可以下载源码进行查看,这里就不多说了。
注:有朋友说在提示Dialog显示的时候,如何去掉默认的暗黑色背景。其实很简单,在上面的onStart方法中,使用如下方式:
layoutParams.dimAmount = 0.0f;
好了,今天的内容就到这里啦,有问题的朋友留言,打球去啦!
源码下载
更多相关文章
- 【Android】Animation之震动效果动画在登录Activity上的应用
- android水波纹涟漪效果的实现 ---- 入门+初步提高
- 边做iOS边学Android(二):认识几个常用的控件
- android实现3D效果翻页
- Android点9图的运用
- Android属性动画简析
- android 自定义Toast样式和显示方式
- ZXing生成二维码和带logo的二维码,模仿微信生成二维码效果
- android 新交互方式