用Principle制作Path的标志性按钮动效#Principle教程

Cover.png

之前一篇介绍Principle的文章中,有放Principle官网的三张示例。 </br>

Principle官网demo示例

这张按钮旋转弹出的效果,很容易让人联想到Path。

Path标志性按钮

这种其实就是Path标志性的添加按钮动效,通过点击底部导航中间的添加按钮后,其他的按钮呈扇形旋转弹出。

接下来就来教大家实现这种效果。


在做demo前,心里都要对自己想要实现效果的变化过程有数。我们先分析Path这种动效的整个动画路径。

图层命名

为了方便,我先对所有元素进行一个统一的命名。

第一次点击,五个icon出现:

1.add button逆时针旋转45°,同时本身有一个点击效果;
2.music、place、camera、thought、moon从add button底下呈扇形弹出位移至对应位置,同时每个icon本身有一个旋转效果和渐现效果;
3.五个icon在位移快结束时有一个弹性的抖动效果;
4.屏幕上出现黑色cover

第二次点击,五个icon消失:

1.add button顺时针旋转45°,同时本身有一个点击效果;
2.music、place、camera、thought、moon位移回原位置,同时每个icon本身有一个旋转效果和渐隐效果;
3.五个icon在位移开始时有一个弹性的抖动效果。
4.黑色cover消失


步骤一:在principle中摆放元素位置

首先设定画板尺寸,为了控制后期上传gif的大小,这里画板设置成540x320,同时添加一个与画板等大的图层bg,填充#F5F0EB。

这次的效果用到的是Principle里面的Animate,由于只有两种状态,因此只需设定两个画板,通过点击跳转实现交互。

在principle中摆放元素位置

将元素摆放至如图位置,注意由于五个icon都是从add button底部出现,因此add button要放在所有图层最上方,且收起状态下要居中对齐。注意两个图层中相同元素的名称一致。

***Tips:可以先在Artboard 1中将五个icon弹出后的位置摆好,然后按cammand+d复制画板,这时候再回到Artboard 1中框选五个icon和add button,依次:底部对齐,水平居中对齐、垂直居中对齐,对齐命令在界面左上角。 ***

Mac下设置快捷键

对齐命令线框仔建议各位可以去设置对应的快捷键,这样工作起来非常高效,快捷键设置可以在“系统偏好设置-键盘-快捷键-应用快捷键”,涉及到菜单跳转的需要用“->”连接。按自己的使用习惯去设置,像Sketch、Keynote、OmniGraffle等都可以设置,非常方便。


步骤二:实现第一次点击中add button的变化效果

给add button添加45°Angle

add button逆时针旋转了45°,因此在Artboard 2中我们要给add button添加-45°角度变化(Angle)。

给add button添加click效果

点击效果可以通过制作另外一张切图实现,这里我们直接添加一个与add button等大的矩形图层button cover,同时将圆角(Radius)设置成最大并设置12%的不透明度(Opacity)的以实现加深效果,并将其编组button cover g。

Tip:由于Animate里面每个元素的动画都是单向的,即同一个图层是不可能通过一次交互跳转让它多次实现同一种属性变化,比如不能出现后又消失、不能先顺时针旋转再逆时针旋转。那么为了实现同一种属性的多次变化,这里有个技巧,就是给当前图层编组。编组后,就可以实现部分属性的多次变化,目前线框仔发现的可以实现的属性有:X、Y、Width、Heigh、Angle、Opacity、Radius。

那么要实现button cover先出现后消失的效果,可以通过控制图层和组的不透明度来实现。

在Artboard 1上,将button cover的不透明度设为0%,button cover g的不透明度为100%。在Artboard 2上,将button cover的不透明度设为12%,button cover g的不透明度为0%。原理即是,先让button cover出现,再让它的编组消失。

给add button添加交互动作

接下来对add button添加点击交互动作,选中Artboard 1中的add button,点击旁边的小闪电图标,选择Tap并按住鼠标不放链到Artboard 2,我们看下实现效果:

初步效果.gif

可以看到旋转效果和五个icon弹出的效果有了(下一步具体说怎样调节五个icon的效果),但是button cover出现消失的效果并没有出现。

Tip:这是因为Principle里面所有属性变化默认都是同时开始同时结束的。

因为button cover是0%-12%,button cover g是100%-0%,二者的不透明度变化同时进行,那最终的效果就是以上级的那个层级也就是编组button cover g决定,所以是看不出变化的。这时候我们就需要对这个Tap交互动作的Animate进行编辑了。

在Animate里对add button进行编辑

点击上面的那个长线箭头,那个就是Tap的Animate,点击后,下面就出现Tap这个交互动作的Animate编辑面板。

***Tip:Animate面板里面可以通过command+鼠标滚轮缩放。默认的属性变化持续时间都为0.3s。 ***

我们先将所有时间轴持续时间延长至0.5s,鼠标框选节点拖动即可。然后让button cover的时间轴在前,button cover g的时间轴在后,并将持续时间设为0.15s以模拟真实的点击效果。效果如下:

点击效果

这时候,点击add button后,add button就有一个按钮颜色变深的点击效果,同时延长持续时间后整个变化过程会显得平缓很多。


步骤三:实现第一次点击五个icon的变化效果

在Animate里对icon进行编辑

可以看到第一次点击时,五个icon是逆时针旋转出来的,所以在Artboard 1上我们要给它们添加顺时针旋转540°的角度旋转。添加后可以看到Animate面板中每个icon都自动添加了持续时间为0.3s的Angle属性变化时间轴,我们将他们都拖成0.5s的。

同时仔细观察,它们旋转的速率是先慢后快的,这里我们就要调节它们的时间轴变化曲线。

***Tip:点击时间轴中间就可以换出曲线面板,Principle里面默认的那个已经是比较自然的,当然可以根据具体情况去调节。 选中多个时间轴可以同时对它们编辑。 ***

编辑icon的曲线

我们对五个icon的时间轴进行编辑,让变化刚开始时的变化更慢一些。这样就有下面的效果:


icon弹出初步效果

但是还差抖动效果没有实现,这里同样需要用到上面说的编组法。因为五个icon已经发生了位移,抖动的效果实际上是让其往回再位移一小段。


步骤四:实现抖动效果

对icon进行编组

对五个icon进行编组,并统一命名,可以发现Animiate面板上发生了变化。以music举例,原来music的X和Y变化时间轴消失了,只保留了旋转的属性变化时间轴,同时music的编组music g出现了X和Y变化时间轴。这是因为music编组后,其实际上没有发生位移,其X和Y的属性变化被其编组music g继承了。

***Tips:Principle内所有的编组范围都可调节,但编组的坐标参考还是以画板为主,而编组内的所有元素的坐标参考则都是以编组自身为主。 ***

所以当music g和music大小相同时,实际上music相对于music g并没有产生位移,因此我们可以通过让music相对于其编组music g产生位移,从而实现抖动的效果。

调整XY实现位移效果

以moon为例,让其抖动其实就是在位移终点的时候再往回位移一小段。这里先将moon的编组moon g在X轴上位移6,Y轴位移-4,再将moon自己在X轴上位移-6,Y轴位移4。

再去到Animate面板,将moon的X、Y属性变化时间轴往后拖,让其后进行,将持续时间改为0.15s,曲线改为Spring。同时将moon g的X、Y属性变化时间轴持续时间改为0.35s,曲线改为Base Both。看下效果:

moon抖动效果

可以看到,moon和其他四个的变化明显不同,整个动画的节奏也更加连贯。

*将其他四个icon同样进行步骤四,这里我设定的位移参考为:
music g_X-6/Y-4 music_X+6/Y+4
place g_X-4/Y-6 place_X+4/Y+6
camera g_Y-8 camera_Y+8
thought g_X+4/Y-6 thought_X-4/Y+6
moon g_X+6/Y-4 moon_X-6/Y+4 *

效果:

全部icon抖动效果

步骤五:添加cover及调整icon先后顺序

最后我们在bg层上添加一个图层,大小等大,命名为cover,填充#000000。

在Artboard 1上不透明度设置为0%,在Artboard 2上不透明度设置为42%,调整其在Animate上的持续时间为0.5s。

同时可以通过让五个icon各自属性变化开始的时间有一个时间差,来实现先后变化的效果,这里设置的时间差参考为0.05s。

效果:

icon先后出现

步骤六:实现收起效果

最后一步,我们给Artboard 2上面add button添加Tap交互动作链回到Artboard 1。

按之前的步骤通过调整Animate上面的时间轴顺序来实现抖动及先后效果,最终实现收起效果,这里就不详细细说了,算是给你做一个练习。

需要注意:收起的效果时间轴顺序和弹出的顺序不一样哦。

好了,我们看最终的效果。

最终效果

切图及Principle源文件
password: rfxp


卡片左右滑动

下一期教程,我会教大家实现探探那种卡片左划不喜欢右滑喜欢的效果。 下期见~


非常感谢您的阅读,您的支持是我最大的动力!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,524评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,869评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,813评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,210评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,085评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,117评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,533评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,219评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,487评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,582评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,362评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,218评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,589评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,899评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,176评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,503评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,707评论 2 335

推荐阅读更多精彩内容