#45 iOS Auto Layout 的修練-1-雪地動物圖集
Published in
7 min readDec 26, 2023
純練習,Auto Layout 置中、對齊、倍率,間距 (#hw16–0)
完成設定後,各種iPhone、iPad尺寸都看看,看起來很OK,都有依螢幕的尺寸自動做相應的調整。
那就開始設定囉!先拉一個大概的位置,開始調整 auto layout 的設定
1. 中心的圖片
先置中,長寬 150
刪掉圖片長寬固定數值,把圖片長寛改成跟螢幕的尺寸的比例值,這樣如果換到 ipad 比較大的尺寸,圖片也會跟著放大,
// winter.centerX = centerX 水平置中
// winter.centerY = centerY 垂直置中
// winter.width = 0.381679 × width 跟著 View 的寬度變動
// winter.height = 0.176056 × height 跟著 View 的高度變動
修改一下命名,加一下編號,比較不會混亂。
2. 第二圈:四個與中心圖片對角對齊的小圖
// winter1.trailing = winter.trailing 右邊對齊
// winter1.width = 0.4 × winter.width 寬縮小 0.4倍
// winter1.height = 0.4 × winter.height 寬縮小 0.4倍
// winter.top = winter1.bottom + 10 與 winter 間距 10
// winter2.top = winter.top 上邊對齊
// winter2.width = 0.4 × winter.width 寬縮小 0.4倍
// winter2.height = 0.4 × winter.height 寬縮小 0.4倍
// winter.leading = winter2.trailing + 10 與 winter 間距 10
// winter3.leading = winter.leading 左邊對齊
// winter3.width = 0.4 × winter.width 寬縮小 0.4倍
// winter3.height = 0.4 × winter.height 寬縮小 0.4倍
// winter3.top = winter.bottom + 10 與 winter 間距 10
// winter4.bottom = winter.bottom 下邊對齊
// winter4.width = 0.4 × winter.width 寬縮小 0.4倍
// winter4.height = 0.4 × winter.height 寬縮小 0.4倍
// winter4.leading = winter.trailing + 10 與 winter 間距 10
3. 第三圈,比第二圈的圖片放大 1.3 倍,中心點對齊第二圈圖片依所在位置的四邊之一
// winter11.centerY = winter1.top
// winter11.width = 1.3 × winter1.width
// winter11.height = 1.3 × winter1.height
// winter1.leading = winter11.trailing + 10
// winter21.centerX = winter2.leading
// winter21.width = 1.3 × winter2.width
// winter21.height = 1.3 × winter2.height
// winter21.top = winter2.bottom + 10
// winter31.centerY = winter3.bottom
// winter31.width = 1.3 × winter3.width
// winter31.height = 1.3 × winter3.height
// winter31.leading = winter3.trailing + 10
// winter41.centerX = winter4.trailing
// winter41.width = 1.3 × winter4.width
// winter41.height = 1.3 × winter4.height
// winter4.top = winter41.bottom + 10
最後的完成圖
最後在加一張背景圖
// trailing = background.trailing
// background.leading = leading
// bottom = background.bottom
// background.top = top
最後把動物的圖片都放上去就完成啦。