0
我正在嘗試調整我爲iPad製作的應用程序中的貝塞爾繪製圓圈的大小。我知道的唯一方法是使用CATransform3DMakeScale
。但是,有沒有一種方法可以簡單地爲圓形的圖層指定高度或寬度,並且會調整它的大小以適合我的規格。簡單地說,因爲我認爲這比使用比例尺更容易和一致。我可以在swift中調整像常規視圖那樣的貝塞爾路徑嗎?
我正在嘗試調整我爲iPad製作的應用程序中的貝塞爾繪製圓圈的大小。我知道的唯一方法是使用CATransform3DMakeScale
。但是,有沒有一種方法可以簡單地爲圓形的圖層指定高度或寬度,並且會調整它的大小以適合我的規格。簡單地說,因爲我認爲這比使用比例尺更容易和一致。我可以在swift中調整像常規視圖那樣的貝塞爾路徑嗎?
如果我正確地理解了你,你想讓這個圓適合它繪製的UIView? 如果您將圓形創建爲UIView的子類,可以使用方法setNeedsDisplay
和drawRect
來完成此操作。
class CircleView: UIView {
let radius: CGFloat = min(self.frame.width, self.frame.height)/2 {
didSet {
setNeedsDisplay()
}
}
override func drawRect(rect: CGRect) {
// draw your UIBezierPath here
}
}
首先您爲您的圈半徑從觀點的寬度和高度,這取決於哪一個更小。然後你打電話setNeedsDisplay()
這將做drawRect
內。
欲瞭解更多信息,請看一看類引用兩個類:
爲什麼你不只是建立在正確的大小圓擺在首位? – jtbandes