在iOS中的UIScrollview顶部缩放和平移在CATiledLayer中绘制的pdf后更正触摸位置

时间:2016-08-02 06:40:08

标签: ios objective-c uiscrollview catiledlayer vfr-reader

我正在研究Atlas App,我正在显示地图,我可以使用pdf文件进行缩放和平移。我为此目的使用 vfr阅读器,它工作正常。我想检测触摸位置,以便我可以选择正确的状态。当视图没有使用下面的代码进行缩放和平移时,我得到了正确的坐标:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch = [touches anyObject]; 

    CGPoint point = [touch locationInView:theScrollView];
}

但是,当我将其缩小并平移时,触摸位置会发生变化,而我没有选择正确的状态。我如何获得正确的选定状态?

1 个答案:

答案 0 :(得分:-1)

在调试 vfr 读者类时,我发现我可以在 ReaderContentPage 类中获得正确的触摸位置。此类在缩放后也提供正确的触摸位置。你可以在ProcessingSingleTap方法中得到如下点:

- (id)processSingleTap:(UITapGestureRecognizer *)recognizer
{
    CGPoint point = [recognizer locationInView:self];
}

CGPoint点给出正确的触摸位置。然后使用delegate方法在所需的类中获取正确的坐标。