2015-06-10 56 views
1

我創建了一個UIView(它只是一個藍色的矩形),我希望它堅持到屏幕的框架/視圖的底部。在Swift中製作一個UIView棒到ViewController框架的底部

var nextBar = UIView() 

nextBar.backgroundColor = UIColor(red: 7/255, green: 152/255, blue: 253/255, alpha: 0.5) 
nextBar.frame = CGRect(x: 0, y: 600, width: self.view.frame.width, height: 50) 
self.view.addSubview(nextBar) 

我假設我需要添加的東西后,「Y:」在部分的CGRect,但我似乎無法使它工作或找到任何地方顯示了我這迅速。

在此先感謝

回答

10

嗯試試這個...

override func viewDidLoad() { 
    super.viewDidLoad() 

    let theHeight = view.frame.size.height //grabs the height of your view 

    var nextBar = UIView() 

    nextBar.backgroundColor = UIColor(red: 7/255, green: 152/255, blue: 253/255, alpha: 0.5) 

    nextBar.frame = CGRect(x: 0, y: theHeight - 50 , width: self.view.frame.width, height: 50) 

    self.view.addSubview(nextBar) 

} 

爲「Y:」在的CRect,你服用的大小,高度,屏幕尺寸和你」重新減去你想要的像素數。它對任何屏幕尺寸都會顯示相同。

+1

謝謝,你能解釋爲什麼* 0.95在做什麼? – Nick89

+0

是的。因此,當您創建'讓theeeight ..'你正在採取屏幕大小的浮動。無論是4s,5s,6還是6+。所以這個數字是屏幕的最大尺寸。 '0.95'是小數或95%。這就像是說,有一個100英尺長的房間,有人告訴你指出95%到房間的末端,你會大致猜到正確,房間的長度是20英尺,50英尺還是100英尺,這並不重要。它只是一個百分比(%)...它工作嗎? – whereisleo

+0

謝謝你。它確實將視圖放置在框架的底部(我將其設置爲0.915),但取決於屏幕大小,它會有所不同。所以它在5秒內似乎很好,但在iPhone 6上它又不合適。 – Nick89

相關問題