当前位置: 首页 > news >正文

郑州市网站建设_网站建设公司_需求分析_seo优化

做网站工资多少钱,网站开发国内外现状研究,深圳全网推广托管,百度seo优化推广软件1.介绍 Android3.0推出了全新的AnimationAPI#xff0c;使用起来很方便#xff0c;但是不能在3.0以下版本使用#xff0c;NineOldAndroids是一个可以在任意Android版本上使用的AnimationAPI#xff0c;API和Android3.0中的类似。 2.常用类 ObjectAnimator ValueAnimator A… 1.介绍 Android3.0推出了全新的AnimationAPI使用起来很方便但是不能在3.0以下版本使用NineOldAndroids是一个可以在任意Android版本上使用的AnimationAPIAPI和Android3.0中的类似。 2.常用类 ObjectAnimator ValueAnimator AnimatorSet ViewPropertyAnimator 类名与官方的API是对应的只是包名为com.nineoldandroids.animation。 3.使用方法 首先导入NineOldAndroids的jar包。在Android3.0中View中有一个animate方法NineOldAndroids中提供了ViewPropertyAnimator.animate(View)与其对应可以选择静态导入。 // 官方API3.0以上 mView.animate().setDuration(5000).rotationY(720).x(100).y(100).start();// NineOldAndroids ViewPropertyAnimator.animate(mView).setDuration(5000).rotationY(720).x(100).y(100).start();// 可以使用静态导入 import static com.nineoldandroids.view.ViewPropertyAnimator.animate; // 直接调用animate方法 animate(mView).setDuration(5000).rotationY(720).x(100).y(100).start();使用链式编程设置各种属性参数最终调用start()来启动动画还可以调用setStartDelay()设置动画延迟启动。 可以设置动画的监听器在动画开始、结束等时候加一些处理。 ViewPropertyAnimator.animate(mIView).setDuration(5000).rotationY(720).x(100).y(100).setListener(new AnimatorListenerAdapter() {Overridepublic void onAnimationStart(Animator animation) {super.onAnimationStart(animation);// 动画开始}Overridepublic void onAnimationCancel(Animator animation) {super.onAnimationCancel(animation);// 动画取消}Overridepublic void onAnimationEnd(Animator animation) {super.onAnimationEnd(animation);// 动画结束}Overridepublic void onAnimationRepeat(Animator animation) {super.onAnimationRepeat(animation);// 动画重复启动}}).start();ViewPropertyAnimator对象提供了取消动画的方法 ViewPropertyAnimator animate ViewPropertyAnimator.animate(mDropTv); /* ... */ animate.start(); // 开始动画 animate.cancel(); // 取消动画简单的动画效果使用ViewPropertyAnimator一般可以满足下面介绍一下高级玩法。核心是ObjectAnimator类。 4.举例 背景颜色从红色到蓝色并反转回去而且无限重复。ValueAnimator colorAnim ObjectAnimator.ofInt(mView, backgroundColor, /*红色*/0xFFFF8080, /*蓝色*/0xFF8080FF); colorAnim.setDuration(3000); colorAnim.setEvaluator(new ArgbEvaluator()); // ARGB colorAnim.setRepeatCount(ValueAnimator.INFINITE); // 无限重复 colorAnim.setRepeatMode(ValueAnimator.REVERSE); // 反转回去 colorAnim.start(景颜色从红色到蓝色而且无限重复。 AnimatorSet set new AnimatorSet(); set.playTogether(ObjectAnimator.ofFloat(myView, rotationX, 0, 360),ObjectAnimator.ofFloat(myView, rotationY, 0, 180),ObjectAnimator.ofFloat(myView, rotation, 0, -90),ObjectAnimator.ofFloat(myView, translationX, 0, 90),ObjectAnimator.ofFloat(myView, translationY, 0, 90),ObjectAnimator.ofFloat(myView, scaleX, 1, 1.5f),ObjectAnimator.ofFloat(myView, scaleY, 1, 0.5f),ObjectAnimator.ofFloat(myView, alpha, 1, 0.25f, 1) ); set.setDuration(5 * 1000).start();使用动画集合AnimatorSet可以使用多个ObjectAnimator实现复杂的动画效果。 AnimatorSet主要方法有两个playSequentially 是创建按顺序执行的动画playTogether是创建同时执行的动画。 5.ObjectAnimator说明 ObjectAnimator是动画对象通过ObjectAnimator提供的一系列of开头的静态方法创建。 创建一般需要传入三个参数 targetObject类型可不是View哦 PropertyNameString类型或Property类型用于描述target中的属性 数组ofInt()就是int数组 ObjectAnimator原理是这样的会调用target的set方法设置PropertyName的值这个值的计算方式是根据Duration时长和第三个参数数组来计算出来当前时间的值。然后调用set方法设置进去。例如上面更改背景颜色的实例PropertyName是backgroundColor数组是两个颜色值运行动画就会根据Duration计算当前的颜色值调用target的setBackgroundColor方法设置进去从而改变了背景颜色。 再看改AnimatorSet的实例PropertyName是rotationX、translationX之类的这几个属性是在Android3.0以上才有的所以调用set方法会出错的通过观察ObjectAnimator发现对这几个属性做了特殊处理提前预制了这几个属性值。 static {PROXY_PROPERTIES.put(alpha, PreHoneycombCompat.ALPHA);PROXY_PROPERTIES.put(pivotX, PreHoneycombCompat.PIVOT_X);PROXY_PROPERTIES.put(pivotY, PreHoneycombCompat.PIVOT_Y);PROXY_PROPERTIES.put(translationX, PreHoneycombCompat.TRANSLATION_X);PROXY_PROPERTIES.put(translationY, PreHoneycombCompat.TRANSLATION_Y);PROXY_PROPERTIES.put(rotation, PreHoneycombCompat.ROTATION);PROXY_PROPERTIES.put(rotationX, PreHoneycombCompat.ROTATION_X);PROXY_PROPERTIES.put(rotationY, PreHoneycombCompat.ROTATION_Y);PROXY_PROPERTIES.put(scaleX, PreHoneycombCompat.SCALE_X);PROXY_PROPERTIES.put(scaleY, PreHoneycombCompat.SCALE_Y);PROXY_PROPERTIES.put(scrollX, PreHoneycombCompat.SCROLL_X);PROXY_PROPERTIES.put(scrollY, PreHoneycombCompat.SCROLL_Y);PROXY_PROPERTIES.put(x, PreHoneycombCompat.X);PROXY_PROPERTIES.put(y, PreHoneycombCompat.Y);}6.总结 NineOldAndroids的API与官方的API基本一致使用很方便。能够轻松实现各种酷炫动画效果。 一般情况使用ViewPropertyAnimator就可以了可以设置动画监听器实现连贯动画和其他处理。 ObjectAnimator创建的target是Object可以传入任何对象原理是调用set方法利用这个特性可以实现很多自定义的效果有点和Scroller类似。 7.参考 Github主页https://github.com/JakeWharton/NineOldAndroids 官方网站http://nineoldandroids.com/ ListView动画库https://github.com/nhaarman/ListViewAnimations Android3.0 APIhttp://android-developers.blogspot.com/2011/02/animation-in-honeycomb.html Android官方文档http://developer.android.com/reference/android/view/animation/package-summary.html
http://www.ihoyoo.com/news/19714.html

相关文章:

  • 个人网站建设素材研发工程师和开发工程师
  • 做违规网站文创产品设计大赛作品
  • 营销型网站建设有哪些建站流程甘肃省住房和城乡建设厅网站
  • 哪儿网站建设费用低珠海网站建设找哪家
  • 单仁网站建设用代码做一号店网站怎么做
  • 个人网站 数据库如何上传到空间南宁网站建设方案详细方案
  • 天津智能网站建设企业做网站的痛点有哪些
  • 白酒招商网站大全未备案网站 怎么处理
  • 创新的医疗网站建设django 网站开发视频教程
  • 灰色风格的网站自己怎么做淘宝客网站吗
  • 做早餐煲汤网站做脚本从网站引流
  • 潍坊地区网站制作摄影作品网站排行榜
  • 梧州网站开发wordpress网站建设中
  • 传智播客 网站开发吉林省吉林市邮政编码
  • 苏州网站怎么做南宁百度网站公司吗
  • 国内外html5网站建设状况上海到北京机票
  • centos7 wordpress网站汕头站扩建工程
  • 网站的结构怎么做公司网站域名续费
  • 手机网站预览专业网站设计 网络服务
  • 做网站需要网络服务器国外优秀的字体设计网站
  • 青岛网站推广途径全国建设项目公示平台
  • 孵化基地网站怎么建设我的小程序在哪里找
  • 手机商城网站免费建站用php做的订票网站
  • 厦门市机场建设招投标网站wordpress写网站教程
  • 环保网站建设开发百度收录排名怎么上去
  • 南昌汉邦网站建设图片做动画网站
  • 网站制作学什么软件版面设计经历了哪几个阶段
  • 如何编写网站建设销售的心得wordpress 更换语言包
  • 建立网站时服务器的基本配置有哪些晋城市新闻
  • 网站建设介绍语失信人信息查询