回答
如果你想能够得到像绿色矩形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的角坐标iOS
- 4. 获取UIView的可见矩形
- 5. Box2D的矩形体具有圆角
- 6. 如何获得UITableViewCell的矩形大小?
- 7. 获取旋转矩形的角落
- 8. 获取圆角矩形的点数
- 9. 从表单中获取特定大小的矩形
- 10. 具有不同大小的矩形和颜色的热图
- 11. 获取UIView的帧大小 - iOS
- 12. 如何在drawRect中获取UIView大小
- 13. 更改矩形的大小?
- 14. 圆角改变UIView大小
- 15. 查找具有条件的矩形中的最大正方形
- 16. 获取Radius中的所有Vector2点
- 17. RCaller获取未知大小的矩阵
- 18. 在另一个矩形内的最大矩形大小
- 19. 从包围矩形和角度获取旋转矩形坐标
- 20. 从具有圆角的矩形检测角点
- 21. 在Oxyplot中调整矩形的大小
- 22. 在EaselJS中调整矩形的大小
- 23. 为什么在UIView中有框架矩形和边界矩形?
- 24. 条形图中的条形图具有不同的大小
- 25. 如何在UIView中绘制具有特定角度的开放式三角形?
- 26. 带圆角矩形和阴影的UIView:阴影出现在矩形上方
- 27. 如何使一个圆形的UIView具有角梯度
- 28. 获取三角形内的三角形?
- 29. 圆角矩形工具和Photoshop中的比例圆角半径
- 30. 获取矩形的所有顶点
你的意思是,以取代函数中的第一行这样一个内部的矩形拐角会触及每个圆角的内部? –
我的意思是我想知道如果我们删除圆角部分会出现的矩形的大小。在我的每一面,只要我到达曲线,我想知道我在哪里。 – Nico