让我试着解释一下。请告诉我,如果我错了。我只有70%肯定。
就像我理解的那样,UIView有一个框架和一个边界矩形。 框架矩形的作用是设置UIView相对于它的超视图的位置。更确切地说:相对于superview的坐标系。边界矩形的工作是相对于它自己的坐标系设置UIView的绘图区域。
简言之:
我错过了任何错误或重要的事情吗?
答案 0 :(得分:38)
查看关于View Geometry的Apple指南。当你改变边界和帧值时,它们有很好的例子。
答案 1 :(得分:9)
视图的框架:视图将填充的超视图内的矩形的位置和大小。
视图的界限:视图内部矩形的位置和大小。
答案 2 :(得分:4)
是的,你是对的。
当您需要使用视图时,则使用框架;边界用于实际实现视图。例如,您需要使用边界绘制视图或处理触摸事件。相反,您在创建视图或在其超级视图等中定位视图时使用框架。
答案 3 :(得分:4)
你是对的。
你可以互换地使用这两个,虽然只是框架在使用视图时更容易,并且在视图内部工作时边界更容易(例如在事件处理或绘图代码中)
另请注意,如果视图上有变换操作,则帧未定义。
答案 4 :(得分:1)
适用于iOS。 Origin坐标与Mac OS位于不同的位置(左上角,而不是左下角)