在Xocde中用 view 拼湊漂亮的圖案
其實用View當拼豆,拼出漂亮的圖案並不難,只是要花時間而已,若是沒有系統的慢慢拼,可能需要幾天,才能拼一個圖案,如何有效率的拼呢?就要先從分析開始了。
做一個成品之前,必須要知道一些必要條件,才能開始規劃。以拼豆為例,需要知道的下面幾項事項。
- 預計顯示在哪種螢幕大小上面(設計為非Auto Layout)
此範例用iPhone 10為範例,(375*812 points) - 因為拼豆一般是用圓形拼,所以用View去模擬時則設定View的大小為正方形,因此用25*25 points的正方形做一個豆,所以375 / 25 = 15,所以畫面上,寬可顯示 15個View,高可以顯示32個View,當然你也可以用其它Size做正方形的規劃,無法整除也無所謂,因為多一個背景的View就看不到留白的部分了。
- 利用Google搜尋拼豆圖片,選擇寬在15與高在32個豆之內的圖片,或是使用圖片轉像素網站(https://hbl917070.github.io/pixel_table/index.html)將想顯示的圖檔轉換成網格圖。
這次的範例是Ariel,為什麼選擇這位公主呢?因為女兒說就是她了。
這個Ariel的拼豆圖,寬15個豆子,高19個豆子,所以換算回螢幕的points為375*475 points,是符合這螢幕的顯示範圍,所以就是她了。
接下來就是花時間的苦工了,但是也是可以有效率的完成,這就要利用群組(Group)來修改,這樣會節省非常多的時間在拉View與修改尺寸與位置。步驟如下:
Step1:先拉一個View,並設定X與Y座標為(0,0)寬高為(375*812 points)
Step2:在拉一個View進第一個View,變成第一個View的sub view,這個View需要設定的部份如下
1.先修改View的名稱為View_1_01(View後面第一個欄位_1表示第一行,第二個欄位_01表示第一列)
2.背景顏色設定為Dark Text Color
3.X座標為0,Y座標為150,寬25 points,高 25 points
Step3:選擇View_1_01,然後複製(command+c),貼上(command+v),重複14次,重複14次是為了建立15列。複製完後再將每一個View更改名稱,規則如上面所說,因為要先建立第一行,所以View的名稱第一個欄位都是1。
Step4:然後選擇View_1_01,同時按下Shift鍵,選擇View_1_15,然後複製(cmd+c),貼上(cmd+v),重複18次,重複18次是為了建立19行的View。這次每複製一次,建議就修改View的名稱,因為複製大量的View排序會亂,因此複製一次改一次比較不容易亂。
Step5:然後選擇View_1_01,同時按下Shift鍵,選擇View_1_15,修改Y座標為150 ,為什麼Y座標起始位置在150,因為我的圖高只有475,所以我留空在上面,讓畫面比較美觀,之後依序類推,群組View_2_01到View_2_15,然後修改Y座標為175 ,因為一個View的高為25 points,所以一次累加25 points,最後一行View_19_01的Y座標因該為600。
Step5:然後選擇View_1_01,同時按下CMD鍵,選擇View_2_01、View_3_01直到View_19_01,修改X座標為0 ,然後依序類推,群組View_1_02、View_2_02到View_19_02,然後修改X座標為25,因為一個View的寬為25 points,所以一次累加25 points,最後一行View_15_01的X座標因該為350。這時完成後你的畫版已經完成了,你可以按照你想要拼豆的圖片開始修改你的畫版了,其實就是改View的背景顏色。
Step6:拼完後將View的背景顏色改為Dark Text Color。並拉一個Label,寫上Ariel。