Auto Layout 入門教學

Apple 官方文件:https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/index.html


https://www.appcoda.com.tw/introduction-auto-layout/

Auto Layout 是一個以約束條件為基礎的佈局系統,它可以讓開發者建立一個可以因應不同螢幕尺寸與裝置(device)方向而調整的自適應介面(adaptive interface)


Align – 建立一個對齊的約束條件,例如對齊兩個視圖的左側。
Pin – 建立間距約束條件,例如定義一個UI控制的寬度。
Issues – 解決佈局問題。
Resizing – 指定尺寸調整後影響約束條件的方式為何。

首先,以 Single View Application iOS App 模板來設定一個新的專案。在專案選項的 Device,選擇 iPhone,然後儲存專案,然後打開 Storyboard。你會注意到在右下角區域有一個選單。在選單的按鈕是跟 Auto Layout 有關,你可以用它來處理對齊(alignment),尺寸(sizing)、間距(spaceing)以及約束條件(constraint)問題。

自動佈局是一個很神奇的工具,它能做到以之前的技術連作夢都無法辦到的事情。對於在建立視圖間的交互關聯中其邊緣狀況(edge case)的處理,Auto Layout充分展現了強大的力量。Auto Layout 還能夠與許多 Apple 中最令人興奮的應用程式介面(APIs)相容,其中包括了動畫(animation),移動特效(motion effect)以及 sprite。

我知道有許多討厭 Auto Layout 的開發者,也許是這是一個新的技術,或者第一次使用時感到很難使用。不管你是否相信,倘若你習慣它,它會變成最棒的工具之一,沒有它的話,反而開發不了 App 了。

除了 Auto Layout 外,Apple 讓開發者可以更彈性使用 Control 加上拖曳來設定 Auto Layout,你只要從任何視圖按住 control 鍵不放,然後拖曳來設定相互間的約束條件即可。當你將滑鼠放開,它會呈現一個相關約束條件列表來讓你選取。


在視圖中設定完約束條件之後,約束線(constraint line)不是以橘色就是藍色來呈現。橘色約束線表示目前的約束條件不足,你必須要去修正它。


出現藍色的約束條件,表示你的佈局已經正確的設定,沒有其他模糊不清的情況。


有時候在約束條件建立後,介面建構器大綱(Interface Builder outline)視圖會顯示一個揭示箭頭。這個紅色的箭頭指出還有些衝突或者不清楚的情況。點擊這個揭示箭頭,你會見到一串問題。這些問題是以場景(scene)為基礎來顯示。一般會出現像是約束條件不足,約束條件衝突以及視圖錯位的問題。


在尺寸檢閱器(Size Inspector),你可以見到所有已經加入的約束條件清單,這些約束條件出現在稱作「Constraints」的區塊中。


除了尺寸檢閱器視圖以外,這些約束條件也會出現在介面建構器大綱內的相對應視圖下。




程式語言編年史

程式語言編年史原文 下面這張圖片描繪了整個程式語言的歷史。包括各種程式語言的發明人、程式語言的特點和適用領域、被什麼網站或公司使用等 (檢視 完整高清圖 )。 之所以會有那麼多不同的程式語言是因為設計程式語言的初衷不同、對語言學習曲線的追求不同、不同程式之間的執行成本差異...