动画

Vue实现购物车小球动画

谁说胖子不能爱 提交于 2020-03-23 17:56:00
思路:   1.因页面分组件分的比较细,由图可知是组件5到组件4的联动. 如果利用组件间通信需要 子组件5 -->组件3-->所有组件的父组件-->组件4, 层级略显复杂,所以使用了vuex状态管理管理数据. 2.动画处理: 利用vue的 transition 标签来处理动画. 小球运动的轨迹是一条抛物线, 可使X轴做匀速运动, Y轴贝塞尔曲线, 可以考虑设定两个嵌套的DOM来控制运行轨迹.外层控制Y轴动画, 内层控制X轴动画. 因小球落点是同一个位置, 可以将小球设定到落点位置, 动态获取初始值来决定小球的运动轨迹. 3.如果连续点击小球, 则页面上可能显示多个小球, 所以需要设置多个小球保证页面上可以显示多个小球. 结构图: html (Ball.vue) : <div class="ball-container"> <transition v-for="(ball,index) in balls" :key="index" name="drop" @before-enter="beforeEnter" @enter="enter" @after-enter="afterEnter"> <div class="ball" v-show="ball.show" > <div class="inner inner-hook"></div> </div> </transition>

Android Animation学习笔记

霸气de小男生 提交于 2020-03-23 07:16:41
关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式: 1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画; 2. Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。 动画类型 下面先来看看Android提供的动画类型。Android的animation由四种类型组成 在XML文件中: alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面转移旋转动画效果 在Java 源码中定义了相应的类,可以使用这些类的方法来获取和操作相应的属性: AlphaAnimation渐变透明度动画效果 ScaleAnimation渐变尺寸伸缩动画效果 TranslateAnimation画面转换位置移动动画效果 RotateAnimation画面转移旋转动画效果 Tween Animation 一个tween动画将对视图对象中的内容进行一系列简单的转换(位置,大小,旋转,透明性)。如果你有一个文本视图对象,你可以移动它,旋转它,让它变大或让它变小,如果文字下面还有背景图像,背景图像也会随着文件进行转换。 使用XML来定义Tween Animation

Windows Phone 页面切换动画

江枫思渺然 提交于 2020-03-22 12:47:17
1.首先引用Microsoft.Phone.Toolkit 2.将App.xaml.cs 中的 RootFrame = new PhoneApplicationFrame(); 改成RootFrame = new TransitionFrame(); 3.引用toolkit xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit" 4.toolkit中一共有5中动画效果 ☻SlideTransition 飞入动画 ☻RotateTransition 旋转动画 ☻SwivelTransition 垂直翻转动画 ☻TurnstilTransition 翻页动画动画 ☻RollTransition 360度旋转动画 5.添加动画效果,以其中的一种动画效果为例 <toolkit:TransitionService.NavigationInTransition> <toolkit:NavigationInTransition> <toolkit:NavigationInTransition.Backward> <toolkit:SlideTransition Mode="SlideLeftFadeIn" /> </toolkit

js动画效果

浪子不回头ぞ 提交于 2020-03-22 05:36:30
<!DOCTYPE html> <html> <head> <meta charset='utf-8'> <title>动画效果</title> </head> <style type="text/css"> .odiv{width:200px;height: 100px;background: green;margin-top:20px;border: 5px solid blue;filter:alpha(opacity:30);opacity: 0.3;} </style> <body> <div class="odiv" id="odiv"></div> <div class="odiv" id="odiv2"></div> <div class="odiv" id="odiv3"></div> </body> <script type="text/javascript"> window.onload=function(){ var div=document.getElementById('odiv'); var divs=document.getElementsByTagName('div'); for(var i=0;i<divs.length;i++){ divs[i].timer=null; divs[i].onmouseover=function(){ move

Activity 切换动画和页面切换动画

喜夏-厌秋 提交于 2020-03-22 04:33:16
public class MainActivity extends Activity { private ViewFlipper viewFlipper; private float startX; private Animation in_lefttoright; private Animation out_lefttoright; private Animation in_righttoleft; private Animation out_righttoleft; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); in_lefttoright = AnimationUtils.loadAnimation(this, R.anim.enter_lefttoright); out_lefttoright = AnimationUtils.loadAnimation(this, R.anim.out_lefttoright); in_righttoleft = AnimationUtils.loadAnimation(this, R.anim.enter_righttoleft);

关于用js写缓动 动画

被刻印的时光 ゝ 提交于 2020-03-22 00:03:18
关于制作简单的缓动动画,动画和dom是js的两大弱项,但是有时候又不得不用js所以下面做一个js的简单封装函数; 首先解释缓动的思想: 若target是目标距离,step为步长,object是对象, var step=(target-object.offsetLeft)/10; 我们拿盒子的距离-目标对象的左偏移量; object.style.left = 盒子本身的位置 + 步长; 当然不要忘记取整; 一般在计算距离通常无小数 step=step>0 ? Math.ceil(step):Math.floor(step); 最后在开始和结束时不要忘记清除计时器; clearInterval(object.timer); 下面看一下封装好的代码: function animate(object,target){ //object要动的对象 target 要动的距离 clearInterval(timer);//清楚定时 object.timer=setInterval(function(){ // 计算步长 动画的原理 盒子本身的位置 + 步长 var step=(target-object.offsetLeft)/10; //对步长取整; step=step>0 ? Math.ceil(step):Math.floor(step); // object.style.left =

Core Animation(核心动画)

走远了吗. 提交于 2020-03-20 21:23:57
iOS开发UI篇—核心动画简介 一、简单介绍 Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍。也就是说,使用少量的代码就可以实现非常强大的功能。 Core Animation是跨平台的,可以用在Mac OS X和iOS平台。 Core Animation的动画执行过程都是在后台操作的,不会阻塞主线程。不阻塞主线程,可以理解为在执行动画的时候还能点击(按钮)。 要注意的是,Core Animation是直接作用在CALayer上的,并非UIView。 二、Core Animation的使用步骤 1.使用它需要先添加QuartzCore.framework框架和引入主头文件<QuartzCore/QuartzCore.h>(iOS7不需要) 2.初始化一个CAAnimation对象,并设置一些动画相关属性 3.通过调用CALayer的addAnimation:forKey:方法增加CAAnimation对象到CALayer中,这样就能开始执行动画了 4.通过调用CALayer的removeAnimationForKey:方法可以停止CALayer中的动画 三、CAAnimation 类的继承结构图    CAAnimation是所有动画类的父类,但是它不能直接使用,应该使用它的子类。 常见属性有:

golang动画等待计算菲波那契结果

倾然丶 夕夏残阳落幕 提交于 2020-03-20 12:31:03
一个小玩意,main goroutine将计算菲波那契数列的第45个元素值。由于计算函数使用低效的递归,所以会运行相当长时间,在此期间我们想让用户看到一个可见的标识来表明程序依然在正常运行,所以来做一个动画的小图标: package main import ( "fmt" "time" ) func main() { go spinner(100 * time.Millisecond) const n = 45 fibN := fib(n) // slow fmt.Printf("\rFibonacci(%d) = %d\n", n, fibN) } func spinner(delay time.Duration) { for { for _, r := range `-\|/` { fmt.Printf("\r%c Caculating...", r) time.Sleep(delay) } } } func fib(x int) int { if x < 2 { return x } return fib(x-1) + fib(x-2) } 来源: https://www.cnblogs.com/janeysj/p/12530702.html

Android属性动画

柔情痞子 提交于 2020-03-19 01:21:55
自 Android 3.0版本开始,系统给我们提供了一种全新的动画模式,属性动画(property animation),它的功能非常强大,弥补了之前补间动画的一些缺陷,几乎是可以完全替代掉补间动画了。 属性动画与补间动画的区别 最大的区别是补间动画就算控件移动到任何位置,控件本身位置还是不变。而属性动画是直接改变控件的位置。 属性动画资源文件的常用属性 propertyName 属性。 动画类型名字 l "rotation" 自身平面旋转 l "rotationX" 3D 翻转 X 轴不变 l "rotationY" 3D 翻转 Y 轴不变 l "alpha" 透明度 l "scaleX" 缩放 X 轴 l "scaleY" 缩放 Y 轴 l "translationY" Y 轴上移动 l "translationX" X 轴上横向移动 现在通过一个案例来更了解属性动画的基本用法。 资源文件布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_my_animator" android:layout_width="match

CSS3 skew倾斜、rotate旋转动画

六月ゝ 毕业季﹏ 提交于 2020-03-18 22:00:31
css3出现之前,我们实现一个对象的一组连续动画需要通过JavaScript或Jquery编写,脚本代码较为复杂; 若需要实现倾斜、旋转之类的动画难度将更高(我还没试过用JavaScript或Jquery如何实现),而且即使能实现估计花的时间代价及维护难度是很大的,很多时候只能依靠画图工具制作此类动画文件; 有时候在想如果不用脚本语言,也不用画图工作制作动画文件,就能在网页上实现倾斜、旋转之类的动画效果多好。 最近挤出一些业余时间学习CSS3,其中就包含很多动画示例,花了点时间学习和整理 今天分享使用html+css3实现skew倾斜、rotate旋转动画,我们先看最终效果图(我这里为了演示效果,就用QQ屏幕截成多张图片,然后制作成gif动画给大家简单展示下,效果不好请大家多多包涵) 图1 具体步骤如下: 1、放置两个div,一个作为容器(图1中绿色背景部分 id="warp"),另一个作为动画元素(图1中黄色背景部分 id="box") HTML代码: <div id="warp"> <div id="box">WEB</div> </div> CSS代码(设置容器及动画元素默认样式): #warp { width: 320px; height: 320px; background: #6FDE82; margin: 20px auto; } #box { height: