创建自定义视图并初始化时,边界与框架相对应

时间:2014-04-22 21:51:24

标签: ios objective-c view frame bounds

我在理解差异方面遇到了一些困难,何时使用了什么。

我知道教科书的定义。我也就这个话题进行了很多搜索。关于SO的一些答案在某种程度上是有帮助的,但我觉得我仍然不理解这一点。

假设我有一个aCustomView.m,当我在该视图中放置UI元素时,我使用边界,这是有意义的,因为它在它自己的坐标系中,但是,当我使用initWithFrame:初始化视图时在我的视图控制器中,我应该使用self.view.frame还是self.view.bounds?两者都有效,但效果不同。

我真的很想理解这一点,所以任何帮助都会受到赞赏。

1 个答案:

答案 0 :(得分:5)

UIView的边界是矩形,表示为相对于其自身坐标系(0,0)的位置(x,y)和大小(宽度,高度)。

UIView的框架是矩形,表示为相对于其所包含的超级视图的位置(x,y)和大小(宽度,高度)。

所以差异只是表达的问题。