在UIScrollView中获取UItextField的真实位置

时间:2013-02-14 15:10:06

标签: ios xcode

我在UIscrollview中有一系列UItextViews。文本视图的数量取决于用户,可以有他想要的数量。

我为每个UItextView(我添加到NSMutableArray)分配了相同的UItapGestureRecogniser。当点击UItextView时,会绘制一条线,将textField连接到用户在屏幕上触摸的点。一切正常,除了我向下滚动的时候,我得到一个错误的y坐标作为我的起点,我用这种方式设置:

CGPoint coords;
coords.y = textname.frame.origin.y + 15;

... textname是手势的发件人

有没有办法获取实际屏幕的坐标,而不考虑UItextView在UIscrollView中?

1 个答案:

答案 0 :(得分:4)

UIView类提供了将坐标从一个视图转换为另一个视图的方法。

要将视图的原点转换为屏幕坐标,请执行以下操作:

CGPoint screenOrigin = [someView convertPoint:someView.bounds.origin toView:nil];

nil传递toView表示转换为屏幕坐标。

在您的情况下,请将someView替换为textname