swift 如何获取点击坐标 5

用touchbegan方法,获取的时候会抛错。第二条错误怎么办?... 用touchbegan方法,获取的时候会抛错。第二条错误怎么办? 展开
 我来答
匿名用户
2015-10-02
展开全部
对于场景内对象元件的点击响应,我们可以在场景的touchesBegan()方法中内统一处理。
SKScene中touchesBegan()是响应屏幕点击的方法,在这里面我们可以先获取点击位置下所有的对象,然后筛选出需要的对象再调用该对象的方法。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import SpriteKit

class GameScene: SKScene {

//当切换到这个场景视图后
override func didMoveToView(view: SKView) {

}

//响应屏幕点击的方法
override func t www.hnnedu.com ouchesBegan(touches: NSSet, withEvent event: UIEvent) {
for touch:AnyObject in touches{
//获取点击的坐标
let location = touch.locationInNode(self)
//该坐标下所有的对象
var arrObject = self.nodesAtPoint(location)
//找出为HanggePoint类型的对象
for p in arrObject {
let point = p as? HanggePoint
//如果该对象不为nil,就调用该对象方法
if point != nil {
point.onTouch()
}
}
}
}
}
追问
不行啊
crazy的yang
2016-02-23
知道答主
回答量:29
采纳率:0%
帮助的人:18.2万
展开全部
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {

let location:CGPoint! = touches.first?.locationInNode(self)//点击时记录点击位置
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Kiminoi爱学习
2016-01-26
知道答主
回答量:1
采纳率:0%
帮助的人:1161
展开全部
touches.first.x
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式