美文网首页Framer 中文文档
状态 States丨Framer 文档 Code

状态 States丨Framer 文档 Code

作者: 刘板栗 | 来源:发表于2017-09-03 22:54 被阅读35次

Code

其实动画就是图层从一个状态切换到另一个状态,但直接用动画,这个图层就只有两个状态了。要给这个图层定义两个以上的状态,需要用到 States标签。状态还可以设定为循环。

添加状态 Adding States

状态虽然也是动画,但是添加方法和动画不一样,相当于把 animate中的属性都打包,变成了一个 states ,再在应用到 animate 中。

在下面的例子中,在设计模式中将 layerA 的不透明度设置为100%,下一步,给 layerA 添加一个新的状态,标题为 "fade",将不透明度设置为0.

# 新状态, 标题“fade”
layerA.states.fade = 
  opacity: 0

下面举例让layerA继承状态“fade”的属性。只定义一个状态时是从默认状态切换到“fade” 状态的。

# 状态应用到动画
layerA.animate("fade")

# 切换状态
layerA.stateSwitch("fade")

但是现在还没有定义交互,所以其实是没有放“切换”这个动作载体的。

循环状态 Cycling States

stateCycle() 标签可以让状态循环。跟图层动画一样,状态也可以添加动画选项。

# 添加状态和动画选项 
layerA.states.rotate =
    rotation: 180
    animationOptions:
        time: 1
        curve: Bezier.ease
 
# 在两个状态间循环 
layerA.onTap ->
    layerA.stateCycle()

layerA的状态rotate是
旋转:180度
动画选项:
时长:1秒
曲线:贝塞尔的缓进缓出

轻点layerA时
layerA的状态循环

编辑状态 Editing States

覆盖状态跟添加新的状态一样,给新状态用相同的名称就覆盖了原来的状态。

# 覆盖👆的那个“rotate”状态 
layerA.states.rotate =
    rotation: 180

相关文章

  • 状态 States丨Framer 文档 Code

    Code 其实动画就是图层从一个状态切换到另一个状态,但直接用动画,这个图层就只有两个状态了。要给这个图层定义两个...

  • Code丨Framer文档

    Code 代码模式 Code 先说在Framer中用代码创建交互的概念和一些简单的教程。不用管你会啥不会啥先,我们...

  • 动画 Animate丨Framer 文档 Code

    Code 几乎所有的图层属性都可以做动画,同一个动画中可以定义多个属性。完了还能定义动画的属性,事件、曲线、延迟等...

  • 图层 Layers丨Framer 文档 Code

    Code 要是用过任何一个设计软件儿,那对图层的概念应该很熟悉了。没有给图层添加内容前,一个图层就是一个矩形。图层...

  • 事件 Events丨Framer 文档 Code

    Code “点击图层A,图层A缩小”这里面“点击图层A”就是一个事件。通过事件给以给图层定义交互动画。简单的点击、...

  • 滚动 Scroll丨Framer 文档 Code

    Code 熟悉iOS平滑滚动吧?要达到这个恰到好处感觉涉及很多物理学。Framer 中的 Scroll 组件会为保...

  • 流 Flow丨Framer 文档 Code

    Code Flow 组件用于快速在多个页面之间切换,将静态屏幕转换为交互流程。 Flow 组件的特别之处在于它知道...

  • 页面 Page丨Framer 文档 Code

    Code 使用 Page 组件可以很轻松的把多个静态屏幕拼接在一起。 Page 组件可实现图层之间从任意方向相互...

  • 滑块 Slider丨Framer 文档 Code

    Code 滑块可以用来显示进度、调节音量、调整图片、定义价格范围等。使用Slider组件就不用重头开始搭建了。 S...

  • 捏合Pinchable丨Framer 文档 Code

    Code Pinchable 图层可以用两根手指控制旋转和缩放,这种多点触控一般用在地图和相片APP,用来缩放或给...

网友评论

    本文标题:状态 States丨Framer 文档 Code

    本文链接:https://www.haomeiwen.com/subject/xscsjxtx.html