Axure教程:帶拖動軌跡的圖標菜單設計

15 評論 13036 瀏覽 96 收藏 7 分鐘

之前在網上看到一款可以任意拖動的圖標菜單,效果很是酷炫,于是想用Axure去實現它,經過一番嘗試,效果還是很理想的。話說什么是帶拖動軌跡的圖標菜單,我也說不清楚,請看下面的效果圖吧。

點擊預覽

一、原型解析

首先,這個菜單由五個圖標組成,一個主菜單圖標,四個二級菜單圖標;

其次,點擊主菜單可以彈出或收起二級菜單;

再次,拖動主菜單圖標時,二級菜單圖標會跟隨主菜單圖標移動并形成運動軌跡。

二、設計思路

關于圖標

菜單中使用到的圖標,可以直接通過Axure部件庫自帶的圖標,也可以從外部導入png圖標

關于點擊

點擊主菜單圖標時,彈出或收起四個二級圖標菜單,很容易想到的是利用Axure的“移動”功能

關于拖動

對于拖動來講,首先第一想到的是要用動態面板,因為只有動態面板才可以增加拖動事件;其次拖動主菜單圖標后二級菜單圖標跟隨移動并形成運動軌跡,則也是利用的Axure的移動功能

三、制作過程

1、準備圖標菜單

這個過程其實沒有什么好說的,你可以畫五個大小相同顏色不同的圓形形狀,也可以導入五張大小相同內容不同的PNG圖片(為什么要PNG,因為你要確保你的圓形圖標是沒有背景色的)。

2、轉為動態面板

將圖標菜單選中后,點擊右鍵,選擇“轉換為動態面板”,每個圖標菜單需要單獨轉換,最終會有五個動態面板。

3、排列圖標菜單

將五個轉為動態面板的圖標(1,2,3,4,5)按照從上到下的的順序重疊排放在一起,即1放在最上面,2~5的順序可以隨意排列。排列好后就是下面這個樣子。

4、增加點擊事件

接下來為代表主菜單圖標的動態面板1添加點擊事件,要實現的效果就是:開始時點擊主菜單,彈出四個二級菜單;然后再點擊主菜單收起四個二級菜單,二級菜單在彈出和收起的過程中增加動效。

(1)點擊主菜單彈出二級菜單

點擊主菜單彈出二級菜單的效果其實就是利用了“移動”動作,當點擊主菜單時,移動二級菜單2,3,4,5;另外分別設置移動的相對位置,已保證彈出后的二級菜單是可以均勻排列的,為了使彈出帶有動效,可以設置移動動作的動畫效果(彈性)和時間(1000ms)。

上面的過程實現了點擊主菜單彈出二級菜單的效果,但實際上并不是在任何時候點擊主菜單都要彈出二級菜單,因為在二級菜單已經彈出的情況下點擊主菜單,就需要收起二級菜單,所以此時要在上面的動作執行過程中增加一個判斷條件,即點擊主菜單后,滿足某個條件時才會彈出二級菜單。

這個條件的意思是:主菜單1接觸到二級菜單2。想想什么時候會滿足這個條件?也就是二級菜單收起時,主菜單1會覆蓋在二級菜單2上面,也就滿足了這個條件;當二級菜單彈出后,主菜單1并沒有接觸到二級菜單2,也就不滿足這個條件。

(2)點擊主菜單收起二級菜單

點擊主菜單收起二級菜單的過程其實跟上面點擊主菜單彈出二級菜單的過程類似,只是移動的方向相反,另外無需設置額外的判斷條件,只需要在單擊事件下增加一個 case2 即可。

這時候預覽一下原型,就可以實現點擊主菜單圖標彈出二級菜單圖標,然后再點擊主菜單圖標收起二級菜單圖標的效果了。接下來再來實現主菜單圖標拖動效果。

5、增加拖動事件

為主菜單圖標的動態面板增加拖動事件,執行的動作就是跟隨拖動軌跡來移動五個菜單圖標,但為了可以出現拖動軌跡效果,在執行移動二級菜單2,3,4,5動作之間增加等待時間。

到此為止,大功告成。

 

本文由 @RAEDME大鵬 原創發布于人人都是產品經理。未經許可,禁止轉載。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 為什么增加了拖動事件后就不能觸發點擊事件了啊

    來自北京 回復
  2. 再次點擊圖標不是收起,而是相互的距離N倍拉開,怎么處理呢?

    來自上海 回復
    1. 你點得太快的時候,第一個判斷還是“接觸”的,所以會產生這種現象,點擊慢點就好了。不然就換一個判斷方法。

      來自福建 回復
  3. 你公眾號里面那個隱秘情書的排列方式是什么?

    來自北京 回復
  4. 二維碼掃出來是一個公眾號啦

    來自浙江 回復
  5. 會玩。是時候出個Axure做貪吃蛇游戲的教程

    來自福建 回復
  6. 你是在做原型設計,還是在做功能開發?

    回復
    1. 在玩

      來自北京 回復
  7. 為什么我拖動起來一卡一卡的,是我電腦原因?

    來自江蘇 回復
  8. 不錯,不過收起的交互貼錯圖了。

    來自福建 回復
  9. 很棒!順便自己延伸了一下做點其他樣式練練手

    來自四川 回復
  10. 玩起來了

    來自四川 回復
  11. Get一個裝逼新技能! :mrgreen:

    來自重慶 回復
  12. six six six

    來自浙江 回復
  13. 學習了?。?!

    來自廣東 回復