華文網

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

今天決定開一個新坑,來講講產品經理的大殺器——Axure。

眾所周知Axure是款原型設計工具,應用十分廣泛。在國內近年來也有一些創業公司在做原型設計工具,如墨刀、mockplus等,主打簡單、易用。但是Axure依然是主流。當然了我並不是說它們不好,其實我都有用過,對於新手來說,確實是很容易上手。

但是我想提醒的一點是,很多“易用”其實是甜蜜陷阱,在這些主打簡單易用的原型工具上,很多細節其實你沒法仔細思考其中的奧妙。很多效果都是工具給你封裝好的,

你拖一拖就完事了,這也限制了你的創造力。你只是在利用別人給你做好的輪子,你無法創造一個輪子。國產的原型工具設計出發點和理念很好,便利的同時就是要犧牲一點創意與成長空間。

目前的很多Axure教程都是按著特定的例子來的,標題一般長這樣:

Axure教程:做出類比時鐘的效果?Axure教程:如何做出滑動解鎖的效果?

那我這個Axure之旅和Axure教程有啥區別呢?回到很久就以前就有人提到產品經理的道與術,

是的,借用一下這個概念。我想講的是Axure的道。

在這系列文章中,你不會看到太多的具體操作,以及那些無數你看不懂的公式(許多作者在文章中給出一個公式然鵝沒有解釋,留下一臉懵比的小白。)在這裡我想分享的是如何運用工具去創造,將你腦子裡的東西用視覺化的形式展示出來。

本文閱讀有一點難度,建議新手可以收藏,

學完Axure基本操作後再來看。

好,接下去進入正題。

我把任意效果,都抽象為三層。

表現層:

就是這個效果(元件)長什麼樣,比如我們常見的淘寶五星打分,樣子就是這樣。

邏輯層:

用一個經典的句式來描述:if…then…

還是拿五星好評的例子舉例。

if我滑鼠移動到星星上then星星變成黃色

if我滑鼠移出星星then所有星星都變成白色 ……

資料層:

資料層是你想展示給用戶的東西。 表現層通過邏輯層連接資料層。

一般可以用一個公式表示:

數字=星星數

用一個圖表示就是:

有了這個的關係,我們就可以分析絕大部分效果。

假設,我們要做一個這樣的效果,如圖:

分析如下:

表現層:

矩形框box文字label音量icon滑竿dynamic panel

(動態面板,凡是能夠拖動、變化的東西,一般都是用這個元件做的,

因為只有它有拖動事件。這點就需要一點使用經驗了。)

好,我們照著在Axure裡畫一個:

邏輯層:

if我拖動滑塊then右邊的數字會跟著我的滑動在0到100之間變化。if我拖動滑塊到最左邊then無法繼續拖動if我拖動滑塊到最右邊then無法繼續拖動

這邊有一個拖動的限制,這個我們可以通過限制動態面板的邊界實現。主要講下思路:

動態面板的x軸數值不能小於滑軌的x軸。動態面板的x軸數值不能大於滑軌的x軸與滑軌長度之和。

所以設置如下:

left 大於或等於[[LVAR1.x]]

left小於或等於[[LVAR1.x+LVAR1.width]]

其中LVAR1是本地變數,指向滑軌。

這裡我們已經可以實現滑軌移動了。

這裡我們觀察到當滑塊在最左邊時候數字為0,在最右邊的時候數位為100,可以知道其實滑塊的位置占滑軌的百分比就是數字變動的規律。

那麼資料層就是:

數據層:

數字=100*滑塊占滑軌的百分比。

進一步翻譯層Axure公式就是:

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

解釋一下公式:

(滑塊的x值-滑軌的x值)/滑軌的寬度整個值保留0位小數

x.toFixed(y)函數,即對x保留y位小數。

至此,這個效果完美實現。

預覽

總結一下:

將你想達成的效果分拆為表現層、邏輯層、資料層,表現層通過拖拽元件實現,邏輯層通過事件觸發,資料層通過Axure函數實現。

開始你的Axure之旅吧!

本文由 @躚塵 原創發佈于人人都是產品經理。未經許可,禁止轉載。

題圖來自PEXELS,基於CC0協議

所以設置如下:

left 大於或等於[[LVAR1.x]]

left小於或等於[[LVAR1.x+LVAR1.width]]

其中LVAR1是本地變數,指向滑軌。

這裡我們已經可以實現滑軌移動了。

這裡我們觀察到當滑塊在最左邊時候數字為0,在最右邊的時候數位為100,可以知道其實滑塊的位置占滑軌的百分比就是數字變動的規律。

那麼資料層就是:

數據層:

數字=100*滑塊占滑軌的百分比。

進一步翻譯層Axure公式就是:

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

解釋一下公式:

(滑塊的x值-滑軌的x值)/滑軌的寬度整個值保留0位小數

x.toFixed(y)函數,即對x保留y位小數。

至此,這個效果完美實現。

預覽

總結一下:

將你想達成的效果分拆為表現層、邏輯層、資料層,表現層通過拖拽元件實現,邏輯層通過事件觸發,資料層通過Axure函數實現。

開始你的Axure之旅吧!

本文由 @躚塵 原創發佈于人人都是產品經理。未經許可,禁止轉載。

題圖來自PEXELS,基於CC0協議