为什么这个屏幕尺寸范围错误?

时间:2012-10-23 21:16:36

标签: objective-c ios cocoa-touch

我想解释一下,所以我创建了一个测试项目。我创建了一个单视图应用程序,只设置纵向(在项目摘要中)并隐藏状态栏(在ViewController.xib中)。

ViewController.m中,我写了一个小方法来检测我的触摸点:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch* touch = [touches anyObject];
    CGPoint point = [touch locationInView:[self view]];
    NSLog(@"%@", NSStringFromCGPoint(point));
}

理论上,我现在应该有一个宽度为320,高度为480的显示器。

所以,如果我开始在宽度上滑动,我会在命令行中看到0到320范围内的值这里我没有问题,实际上我的值范围是2.5 .. .317。

所以,如果我开始在高度上滑动,我会在命令行中看到0到480范围内的值。但是,我在这里遇到问题。在实践中,这个范围是-5.5 ...... 469。

我不明白为什么会这样?这个范围很奇怪。

1 个答案:

答案 0 :(得分:0)

您需要将locationInView的视图传递给方法rootViewController。此方法表达的坐标与您传递的视图相关。