Framer是什麼

一個製作 iOS, Android 和 Web 應用的原型設計工具。

直接可製作UI介面,並且實現響應式佈局

高保真的原型, 最為接近真實的效果

易於分享, 任何平臺輕鬆檢視

高保真原型的目的

製作原型最重要的目的就是“溝通” !近年來許多設計流程裡,開始重視”原型製作”的重要性,例如設計思考中,就有特別將”原型製作”當成一個重要環節。透過這些原型,可讓你進行最基礎的想法驗證,然後根據測試結果再來修正你的設計方向。這樣的測試迴圈,可有效降低部分設計錯誤。

要記住不要在原型投入太多精力。 完美不是原型的重點,而是如何透過它得到驗證結果。

Framer 的程式語言(Coffee Script)

Framer整體是架構在JavaScript下。但我們所撰寫的語言則是CoffeeScript,它屬於高階語言的一種,因此它的程式碼是非常接近口語。

但以設計師的角度來看,會建議你不要從CoffeeScript下手來學習。先從理解Framer本身架構,以及它所提供的引數與Function入門比較妥當。

Framer Doc:

http://

framerjs。com/docs/

中文網(文件同步有一定延遲)

http://www。

framercn。com/docs

Coffee Script:http://coffeescript。org

Framer的拓展能力

Framer 支援許多JavaScript 提供的服務, 比如可以接入地圖MapBox等網頁的第三方服務,讓你的原型完整度更高; 當然支援VR原型。

原生互動感受

Framer教程系列 - 01初探

VR原型

Framer教程系列 - 01初探

資料折線原型

Framer教程系列 - 01初探

3D互動原型

Framer教程系列 - 01初探

遊戲原型

Framer教程系列 - 01初探

Framer的分享

Framer分享很方便,上傳到Framer的雲平臺。透過連結可以傳送給任何人,他們也可以透過手機或者電腦檢視。同時,平臺支援版本儲存,方便你迭代對互動細節不斷打磨。

如果覺得Framer cloud太慢,可直接上傳公司伺服器,也可隨時分享他人檢視

Framer教程系列 - 01初探

小試牛刀

光說不練假把式,只有親自體驗才能知道Framer的強大之處。Framer支援匯入第三方sketch和Photoshop等軟體的設計稿。在Framer90版本新增Design模式,也就是我們完全可以不使用第三方軟體,只在framer完成設計圖和一些高保真互動。(案例檔案,末尾進行下載)

這次暫時不會講解如何匯入第三方設計稿,本次只是讓你初步體驗到framer的強大,不要著急,羅馬不是一日建成的。

我們來看看我們第一部分教程要做的效果

Framer教程系列 - 01初探

Gif效果變慢了,移步這裡體驗

https://

framer。cloud/pKxzY

Framer中製作Email圖案

切換到Framer的Design模式下,使用方式和sketch,XD等工具如出一轍。我們拆分下郵件結構。

Framer教程系列 - 01初探

郵件背面和郵件正面包裹我都添加了輕微的陰影,營造一種輕擬物的感覺。

注意

,所有的形狀都請包裹在framer的Frame中,因為這樣你才能在Code介面下去控制他們的屬性和製作動畫(也就是需要一個容器去裝這些元素)

括號的英文就是包括的Frame的名稱,我們來看看圖層結構。整個email我用了一個大的Mail來包裹,CustomDevice就是作為深色的畫板背景。effect圖層是點選的水波紋效果,暫時不要管。

Framer教程系列 - 01初探

然後,我們在需要做動畫的圖層右鍵新增

Target

,這樣就可以在Code中去呼叫這些圖層去控制它們啦。

Framer教程系列 - 01初探

把mail,cover 都新增上

Target

。 然後我們切換到code模式下。

Framer教程系列 - 01初探

可以看到左邊有我們剛剛Target的圖層,它們都高亮顯示,表示我們可以直接透過名稱去控制它們。左下角的Docs是我們經常用的,可以快速去檢視官方文件,當我們遇到問題,可以多閱讀文件很多問題都能解決。

[中文文件(文件同步有一定延遲)]

http://www。

framercn。com/docs

右邊就是預覽效果視窗啦。 咦? 為何我郵件是摺疊狀態呢,明明我們在Design模式下是開啟的。

因為我添加了這段程式碼

Framer教程系列 - 01初探

我們來逐一解釋一下意思哦(開始Code咯,別害怕很簡單的)

cover。originY = 0

cover就是我們之前畫的郵件封口啦,我們透過名字去找到這個圖層。然後帶上一個小點,就是說我們要去控制cover的什麼屬性呢(就是圖層的尺寸,位置,顏色等)。OriginY是什麼呢?

Origin就是指的圖層的變換中心,比如我們進行縮放,旋轉的時候的一個定位中心,OriginX就是橫向中心,OriginY就是垂直中心,看下圖

Framer教程系列 - 01初探

預設的變換中心是藍色的(OrignX=0。5,OrignY=0。5)這裡我們需要切換到紅色(只需修改originY=0),也就是把cover向下翻折180度,變成關閉狀態。

cover。rotationX = -180

然後以X軸旋轉180度,因為是逆時針所以是負的。

這個時候你會發現cover圖層不見了,為什麼呢?因為我們的空間是三維的,還有Z軸的存在,Framer的翻折之後圖層產生了重疊(預設圖層都在Z軸為o的位置)

cover。z = 1

把cover的z軸設定為1,那它就在其它圖層的上面咯。

mail。y = 0

可以原始檔mail的Frame和mail位置是不同的,mail的座標是相對於mail的Frame的(可以連線買來的Frame就是承載mail的畫板),這裡把

mail。y = 0

就是講mail的Y座標以Frame的座標重置,這樣mail就裝進了郵件中。

隱藏COVER可以看到MAIL被裝了進去

Framer教程系列 - 01初探

Mail。x = Align。centerMail。y = Align。center(-50)

這兩句程式碼很簡單,Align。center就是相對螢幕居中的意思,這裡設定就可以讓Mail圖示在你任何螢幕尺寸下居中,

Align。center(-50)

就是居中後,座標值減50(因為我們的視覺中心基本都中間靠上,所以我設定垂直距離居中偏上,這都是細節!)

做到這裡,我們的效果應該是這樣子

Framer教程系列 - 01初探

是不是覺得很難?開始接收陌生的事物都是這樣子的,更重要的是去思考,發現內在規律和聯絡。

本次最後一個知識點,我們新增點選事件,進行點選郵件切換為開啟狀態。

Framer教程系列 - 01初探

新增程式碼:

Mail。onTap ->

cover。rotationX = 0

cover。z = 0

onTap

就是一個事件,加上

->

。記得它們之間一定要帶有空格,然後在下面寫上事件執行的動作。下面我寫的就是還原我們設計稿中的狀態(即開啟郵件的效果),記住寫在事件裡面的內容一定要換行。就像下面的程式碼被包裹在事件中一樣。

Framer教程系列 - 01初探

完成上述程式碼後,我們可以看到

Framer教程系列 - 01初探

附上到目前為止的課程檔案:

連結:https://pan.baidu.com/s/15245oCRP0qSL5L5cd7O2Fg 密碼:w7zf

我們已經實現一個基本的效果了,剩下就是潤色動畫了,目前的知識點已經比較多了,考慮到大家的接受程度,動畫部分將在下一期內容中進行。

教程中肯定沒有寫到所有細節,我希望的是更多的自主探索的學習,當然小有夥伴有問題也可以加我微信,向我提問。也可留言提出建議,畢竟第一次寫教程,我擔心寫得太難。。。

Framer教程系列目前是我的試水文章,如果看的人太少,很可能也會腰斬,如果喜歡,希望不要吝嗇你的贊,給點鼓勵