我刚刚开始尝试学习如何为iPad编写应用程序。我有C,C ++和Java方面的经验,但对于Objective C ios来说,这是一个新手。
我有一个自定义的UIView,它在屏幕上绘制一个数字行,我有一些工作按钮可以触发此视图中的方法。
我想要做的是触摸绘制的数字线,在我的UIView中调用一个方法。更一般地说,背景上的任何一个点击都应该用它的屏幕坐标调用这个方法,这样我就可以决定他们是否触摸到了正确的位置和做什么。
我现在一直在搜索信息很多小时,而且我的圈子有点儿了。据我所知,将手势识别代码添加到ViewController而不是UIView是很正常的(我自动让Xcode尽可能地为我做,所以只对这些不同的部分有一个非常基本的了解)。
问题在于程序的所有“大脑”都在UIView中(我想将绘制的箭头移动到数字线上的新点击位置)。但是如果我在ViewController中有一个响应触摸事件的方法,我就无法弄清楚如何从我的控制器中调用我的UIView方法。
最简单的方法是直接在我的UIView子类中从触摸事件调用的方法。
到目前为止,我所做的只是使用Xcode来设置一个视图应用程序,并创建了一个UIView子类(Called FracLine),然后绘制数字线和箭头。
感谢。
答案 0 :(得分:0)
如果您查看UIResponder(UIView继承自的)的文档,您将看到底部附近与触摸有关的方法。这些方法都为您提供了包含UITouch对象的NSSet触摸。 UITouch有一个名为locationInView的实例方法:它会给你一个CGPoint来查看它被触摸的位置。