Axure之旅|不看教程,如何做出任意自己想要的效果?

今天决定开一个新坑,来讲讲产品经理的大杀器——Axure。

众所周知Axure是款原型设计工具,应用十分广泛。在国内近年来也有一些创业公司在做原型设计工具,如墨刀、mockplus等,主打简单、易用。但是Axure依然是主流。当然了我并不是说它们不好,其实我都有用过,对于新手来说,确实是很容易上手。但是我想提醒的一点是,很多“易用”其实是甜蜜陷阱,在这些主打简单易用的原型工具上,很多细节其实你没法仔细思考其中的奥妙。很多效果都是工具给你封装好的,你拖一拖就完事了,这也限制了你的创造力。你只是在利用别人给你做好的轮子,你无法创造一个轮子。国产的原型工具设计出发点和理念很好,便利的同时就是要牺牲一点创意与成长空间。

目前的很多Axure教程都是按着特定的例子来的,标题一般长这样:

Axure教程:做出模拟时钟的效果?
Axure教程:如何做出滑动解锁的效果?

那我这个Axure之旅和Axure教程有啥区别呢?回到很久就以前就有人提到产品经理的道与术,是的,借用一下这个概念。我想讲的是Axure的道。

在这系列文章中,你不会看到太多的具体操作,以及那些无数你看不懂的公式(许多作者在文章中给出一个公式然鹅没有解释,留下一脸懵比的小白。)在这里我想分享的是如何运用工具去创造,将你脑子里的东西用可视化的形式展示出来。

本文阅读有一点难度,建议新手可以收藏,学完Axure基本操作后再来看。

好,接下去进入正题。

我把任意效果,都抽象为三层。

表现层:

就是这个效果(组件)长什么样,比如我们常见的淘宝五星打分,样子就是这样。

Axure之旅|不看教程,如何做出任意自己想要的效果?_第1张图片

逻辑层:

用一个经典的句式来描述:if...then...
还是拿五星好评的例子举例。
if我鼠标移动到星星上then星星变成黄色
if我鼠标移出星星then所有星星都变成白色
......

数据层:

数据层是你想展示给用户的东西。 表现层通过逻辑层连接数据层。
一般可以用一个公式表示:
数字=星星数
用一个图表示就是:

Axure之旅|不看教程,如何做出任意自己想要的效果?_第2张图片

有了这个的关系,我们就可以分析绝大部分效果。

假设,我们要做一个这样的效果,如图:

分析如下:

表现层:

矩形框box
文字label
音量icon
滑竿dynamic panel
(动态面板,凡是能够拖动、变化的东西,一般都是用这个组件做的,因为只有它有拖动事件。这点就需要一点使用经验了。)

好,我们照着在Axure里画一个:

逻辑层:

if我拖动滑块then右边的数字会跟着我的滑动在0到100之间变化。
if我拖动滑块到最左边then无法继续拖动
if我拖动滑块到最右边then无法继续拖动

这边有一个拖动的限制,这个我们可以通过限制动态面板的边界实现。主要讲下思路:

动态面板的x轴数值不能小于滑轨的x轴。
动态面板的x轴数值不能大于滑轨的x轴与滑轨长度之和。


Axure之旅|不看教程,如何做出任意自己想要的效果?_第3张图片

所以设置如下:

left 大于或等于[[LVAR1.x]]
left小于或等于[[LVAR1.x+LVAR1.width]]
其中LVAR1是本地变量,指向滑轨。

这里我们已经可以实现滑轨移动了。

这里我们观察到当滑块在最左边时候数字为0,在最右边的时候数字为100,可以知道其实滑块的位置占滑轨的百分比就是数字变动的规律。

那么数据层就是

数据层:

数字=100*滑块占滑轨的百分比。

进一步翻译成Axure公式就是

Axure之旅|不看教程,如何做出任意自己想要的效果?_第4张图片

数字=[[(((slider.x-slide.x)/slide.width)*100).toFixed(0)]]

解释一下公式:

(滑块的x值-滑轨的x值)/滑轨的宽度整个值保留0位小数
x.toFixed(y)函数,即对x保留y位小数。

至此,这个效果完美实现。

预览

Axure之旅|不看教程,如何做出任意自己想要的效果?_第5张图片

总结一下:

将你想达成的效果分拆为表现层、逻辑层、数据层,表现层通过拖拽组件实现,逻辑层通过事件触发,数据层通过Axure函数实现。

开始你的Axure之旅吧!

别忘了点个喜欢哟~

你可能感兴趣的:(Axure之旅|不看教程,如何做出任意自己想要的效果?)