回答
如果你想能夠得到像綠色矩形here。您可以使用此方法,在那裏你通過紅色矩形作爲參數:
func innerRectangle(view:UIView) -> CGRect {
let radius = view.layer.cornerRadius * (1 - M_SQRT1_2)
let origin = CGPoint(x: view.frame.origin.x + radius, y: view.frame.origin.y + radius)
let size = CGSize(width: view.frame.width-radius*2, height: view.frame.height-radius*2)
return CGRect(origin: origin, size: size)
}
不幸的是,我不相信你的代碼會返回圖像中綠色矩形的區域。例如,如果'cornerRadius == 0.5f * view.frame.size.width',那麼你返回的'CGRect'的面積爲0,'origin.x == 0.5f * view.frame.size.width'和這些陳述都不是真的。我相信需要一些三角函數來準確地返回綠色矩形的CGRect。 – Fennelouski
@Fennelouski感謝您將鏈接放在內聯。不過,我不相信你測試了你的代碼。這是不正確的。除了你的計算,減少寬度相同的值你增加了原點,已經沒有意義了。我會回到我的實施,它的工作原理和測試。請在Playground中嘗試一下 –
我現在會這樣做,對於錯誤感到抱歉。 – Fennelouski
- 1. 帶有透明圓角矩形的UIView?
- 2. 獲取不同大小屏幕的右角Radius問題
- 3. 獲取UIView的可見矩形
- 4. Box2D的矩形體具有圓角
- 5. 如何獲得UITableViewCell的矩形大小?
- 6. 具有不同大小的矩形和顏色的熱圖
- 7. 如何在drawRect中獲取UIView大小
- 8. 圓角改變UIView大小
- 9. 查找具有條件的矩形中的最大正方形
- 10. 獲取Radius中的所有Vector2點
- 11. 從包圍矩形和角度獲取旋轉矩形座標
- 12. 在EaselJS中調整矩形的大小
- 13. 在D3中添加具有唯一ID和鏈接的大矩形內的小矩形?一個特定ID
- 14. 爲什麼在UIView中有框架矩形和邊界矩形?
- 15. 帶圓角矩形和陰影的UIView:陰影出現在矩形上方
- 16. 如何使一個圓形的UIView具有角梯度
- 17. Silverlight中的圓角矩形
- 18. 將大矩陣對角化的工具
- 19. pygame的角度球(矩形)和矩形
- 20. 調整矩形陣列的大小
- 21. Raphael JS可調整大小的矩形
- 22. 如何增加矩形的大小
- 23. emacs:更改矩形的大小寫
- 24. 獲取離中心矩形最遠的矩形
- 25. 動畫調整具有子視圖的UIView的大小
- 26. 從中心開始用較小的矩形填充大矩形的算法
- 27. 如何創建具有擴展角的矩形?
- 28. Java - 繪製具有兩個圓角的矩形
- 29. Swift 3:錯誤的UIView大小讀取
- 30. 外形與UIView的三角形由CAShapeLayer
你的意思是,以取代函數中的第一行這樣一個內部的矩形拐角會觸及每個圓角的內部? –
我的意思是我想知道如果我們刪除圓角部分會出現的矩形的大小。在我的每一面,只要我到達曲線,我想知道我在哪裏。 – Nico