View
是在裝置螢幕上呈現出來的東西,像是文字、圖片、元件(按鈕、選單、列表之類)等等。
ViewController
是負責資料的處理與編排設置視圖要如何呈現。一個 UIViewController 負責一個畫面(即呈現視圖
View
)的功能,未來如果有多個畫面時,就需要各自建立一個不同的 UIViewController
UIView
所有 UIKit 的元件(像是按鈕UIButton
、文字UITextView
等等)都是繼承自 UIView ,所以 UIView 其實很單純,只是有著每個元件都需要的、最基礎的屬性及方法。
要將元件放進畫面(即視圖View
)中,需要了解有三個條件:原點、尺寸以及要疊加上去的父視圖。
原點
原點是以左上角為(0,0)
開始向右( x 軸)跟向下( y 軸)。
尺寸
每個元件都可以設定自己的長寬,而當有了原點及長寬之後,就可以構成一個矩形,也就是組合成了這個元件的形狀跟呈現的位置。
父視圖
建構一個畫面就是將元件疊在父視圖上才顯現得出來,而最基底的視圖則是 UIViewController 的一個屬性,在其內的方法都可以用self.view
來表示這個基底視圖。
用程式也可以寫
- 先宣告一個方塊常數在UIView制定他的位置跟長寬
- 背景顏色使用UIView 的一個屬性
backgroundColor
裡面有很多內建的顏色,也可以使用init(red:,green:,blue:,alpha:)
來產生一個 RGB 顏色。 - 接著可以看到在基底視圖
self.view
使用addSubview()
方法來加入前面定義的這個 UIView,這樣就完成了將這個元件加進畫面的動作。
以相對尺寸來設置元件
UIScreen,這主要是用來代表螢幕的資訊,通常是用來取得整個螢幕的尺寸。
以前
let fullScreenSize = UIScreen.mainScreen().bounds.size
let width = fullScreenSize.width
let height = fullScreenSize.height
Swift 3以上使用:
let fullScreenSize = UIScreen.main.bounds
let width = fullScreenSize.width
let height = fullScreenSize.height
bounds又分為下面兩個:
- origin:有兩個屬性
x
及y
,也就是原點。通常會使用CGPoint(x:,y:)
來設置一個點。 - size:有兩個屬性
width
及height
,也就是尺寸,通常會使用CGSize(width:,height:)
來設置一個尺寸。
line19 使用UIView 另一個屬性center
,這代表著這個元件的中心點位置,用CGPoint(x:,y:)
來設置一個新的點,複寫原本line16的x跟y。
查找文件
如果對於一個元件、屬性或方法不熟悉,可以按著option
鍵(游標會變成一個問號)再用滑鼠點選你有疑問的方法或屬性(像是按住option
鍵再點UIView
或bounds
等等),也獲著右側側邊欄,點選右邊的頁籤[ ? ]
,當你游標指到一個元件、屬性或方法時,這邊便會顯示詳細說明。