早前做完一个应用后期需要加入点效果化。
相对于iPhone上应用的效果,最为经典的界面切换视觉效果就是,放大进入和缩小退出。
还好Android也早以有了这样对应的动画文件。
并且如大家所知的,提供了
overridePendingTransition()这个
最简单实现的方法api.
------------------------
但是如网上所说的:
这里需要特别说明的是,关于overridePendingTransition这个函数,有两点需要主意:
1.它必需紧挨着startActivity()或者finish()函数之后调用
2.它只在android2.0以及以上版本上适用
----------------------------------------
第二点不提了。
提下第一点,该方法必须在以上两个函数之后调用。
简单说就是 A ——> B切换
我们可以在A是startActivity方法后执行。那我A进来的时候呢?
比如A为入口Activity。
当然目前的应用可以很简单的解决这个视觉上的问题,因为一般应用进入都做了log或是过渡的Activity。
问题1也基本算解决了。
但是感觉每次都在start或是finish方法后写下这代码挺麻烦的
于是我试着把overridePendingTransition写在基类的oncreate中。
发现也行的。。猜测这个方法背后发生了什么。
然后蛋疼的去看了下Activity中overridePendingTransition()方法,
然后引出:ActivityManagerNative,ActivityManagerProxy等等各个无语凝噎的名词。
引出ActivityManager框架。FrameWork层次东西了,有兴趣的可以google研究下。
提下切换效果的另一种玩法。
style文件。
上面这个方式看似能很好的解决了切换这个问题。
但是仔细一看却发现,只存在两种状态下,startActivity,开启时和 finish,结束时。
一开始我考虑到activity单例以及不销毁问题。也就是不finish的时候。
悲剧了效果代码没地方写了。
简单举例:比如tabLayout布局式的。一个tabHost容器中有4个Activity,一般来说tag切换时,我们是不调用finish,而只是执行onStop,甚至上次我打
log时发现居然只是onPasue()(这个问题比较诡异了,暂且不理它)。
最后发现activity中Style下的一个android:windowAnimationStyle属性。
以上只是style中item可以有更多选择,就刚好解决了上面提到的问题。
参数更多查看文档
http://developer.android.com/reference/android/R.styleable.html#WindowAnimation
顺带提下界面中View的效果,同样的可以自定义动画。
以及在布局文件中的
android:layoutAnimation中定义动画效果。
分享到:
相关推荐
Android 改变Activity切换效果
android activity切换动画效果大全,包括六个经典例子: 1、25个activity切换的动画效果; 2、android activity 切换效果库(劲推荐); 3、Android_Activity之间切换动画; 4、Android改变Activity切换效果; 5、...
android activity 切换效果库(劲推荐)
android activity切换动画效果,定义了多种,如果需要,可以仿照着自己定义
Android中Activity切换动画,是非常常见的,在很多手机中,直接就有自带的效果,但是有些没有,我写了一个例子供大家下载,交流
activity切换效果集合
android Activity间切换动画效果演示源码 模糊 水波纹 折叠
Android Activity切换动画效果
Android 改变Activity切换方式~~~~~~~~~~~~~~
Android动画效果-切换Activity动画,切换Activity时的淡入淡出和缩放进入退出效果
android点击按钮实现多个Activity滑动切换 切换方式从右边进入,左边退出
activity切换特效
Android开发中一个activity切换到另一activity的各种效果总览
提供多种方式的activity切换动画的实现,并封装为基类,方便使用
Android的Activity切换动画特效库SwitchLayout,视图切换动画库,媲美IOS
android动画 切换特效
Android炫酷的Activity切换效果,使用了materia design设计风格,使用要求在api21(5.0)以上的版本。希望能帮助大家
大家使用Android的原生UI都知道,Android的Activity跳转就是很生硬的切换界面。其实Android的Activity跳转可以设置各种动画。下面给大家看看效果: 实现非常简单,用overridePendingtransition(int inId, int outId)...
写了几个比较常用的android客户端里activity的切换动画,有需要的可以下载试试。
在琢磨Android5.0特性的时候书上写到Activity的转换不好用文字描写,最好将代码写出来亲自看一下,附件是Android Studio的工程,gradle版本应该是2.4.