0

我一直觉得 View 的起源定义了它在父视图中的位置。但是在我的应用程序中,无论我在界面上将视图移动到何处,Origin 都是 0,0。

这是我使用的代码:

- (void)drawRect:(CGRect)rect
{
    float orginX = rect.origin.x;
    float orginY = rect.origin.y;

    NSLog(@"X-Origin %f.", orginX);
    NSLog(@"Y-Origin %f.", orginY);

我的错误在哪里?

4

2 回答 2

4

传入 drawRect: 的矩形是视图的边界,而不是框架,所以它的原点是 0,0。

于 2012-10-04T05:32:39.287 回答
0

我相信 drawRect 方法是通过相对于视图原点的框架,即原点将始终为 0,0。这是因为你应该在不知道或关心它相对于它的超级视图的位置的情况下绘制你的视图。

于 2012-10-04T05:33:07.670 回答