2017-08-08 74 views
1

我想實現以下:如何在底部劃一個CGRect?

enter image description here

自定義導航欄,其在底部砍,我怎麼能做到這一點使用的CGRect?

另一種替代方法是製作一個圖像並將列表向上推以重疊圖像中的透明部分。如果可能的話,我更喜歡第一個解決方案。有什麼建議麼?

這是我目前的WIP狀態:enter image description here

回答

2

您可以使用貝塞爾路徑 只需添加線條,讓您的自定義形狀 這樣的:

let path = UIBezierPath() 
shape.move(to: CGPoint(x: 0, y: 0)) 
shape.addLine(to: CGPoint(x: 0, y: 320)) 
shape.addLine(to: CGPoint(x: 94, y: 320)) 
shape.addLine(to: CGPoint(x: 64, y: 0)) 
shape.close() 
+1

我相信你不需要那麼多點實現OP所需的效果,只需在底部繪製一個三角形就足夠了。另請注意,closePath()會將最後一個添加的點連接到起點,如果在起點處結束,則不需要再添加原點。 –

+0

形狀如何應用於NavigationBar的當前Rect?通過重寫平局? – Rovdjuret

+1

您可以創建一個'UINavigationbar'子類並在'drawRect'方法中添加您的視圖 –

相關問題