被UIView的起源混淆

时间:2012-10-04 05:24:06

标签: ios uiview

我总觉得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);

我的错误在哪里?

2 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:0)

我相信drawRect方法相对于视图的原点传递帧,即原点始终为0,0。这是因为您应该在不知道或不关心其超级视图的位置的情况下绘制视图。