首页 > 代码库 > android-Animation进阶(创造用户舒服的动画)
android-Animation进阶(创造用户舒服的动画)
android中常用的动画有Animation ,Animator两种;
---第1种常用的是使用在Activity切换中.比如打开一个Activity.关闭一个Activity 个人比较喜欢的是左右滑动的效果(至于xml如何配置Tween动画不在赘述,网上到处都是)
1.启动Activity
private void gotoRegistActivity() { Intent intent=new Intent(); intent.setClass(getActivity(),RegistActivity.class); startActivity(intent); getActivity().overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out); }
2.关闭Activity(这里个人项目做了一个Activity基类,在基类中实现代码)
@Override public boolean onKeyDown(int keycCode, KeyEvent keyEvent) { if (keycCode==KeyEvent.KEYCODE_BACK) { this.finish(); overridePendingTransition(R.anim.slide_left_in,R.anim.slide_right_out); return true; } return super.onKeyDown(keycCode, keyEvent); }
---Animator配置
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <objectAnimator android:interpolator="@android:interpolator/decelerate_quint" android:valueFrom="200dp" android:valueTo="0dp" android:valueType="floatType" android:propertyName="translationX" android:duration="500" /> <objectAnimator android:interpolator="@android:interpolator/decelerate_quint" android:valueFrom="0.0" android:valueTo="1.0" android:valueType="floatType" android:propertyName="alpha" android:duration="500" /> </set>
2.一般Animator是配置在新的API上,诸如我们熟悉的Fragment里面,网上查找了一下,说是add,remove,前调用,经测试,在FragmentTransaction开启事务后
调用:(以下代码在调用detach()前有效果,slide的xml根据上面的稍稍改动即可,如果读者想查看东西时间 建议增加动画时间观察):
mTransaction.setCustomAnimations( R.anim.slide_frag_in, R.anim.slide_frag_out);
android-Animation进阶(创造用户舒服的动画)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。