iOS无法识别每次触摸

iOS无法识别每次触摸,ios,swift,sprite-kit,touch,Ios,Swift,Sprite Kit,Touch,我试图让一个精灵出现在屏幕上时,用户点击屏幕。我使用的是Xcode提供的默认SpriteKit游戏,下面是我用来检测用户点击屏幕的方法。我遇到的问题是,我经常点击屏幕,但精灵并没有像它应该的那样出现。你知道为什么会这样吗 override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { /* Called when a touch begins */ for touch in

我试图让一个精灵出现在屏幕上时,用户点击屏幕。我使用的是Xcode提供的默认SpriteKit游戏,下面是我用来检测用户点击屏幕的方法。我遇到的问题是,我经常点击屏幕,但精灵并没有像它应该的那样出现。你知道为什么会这样吗

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
   /* Called when a touch begins */

    for touch in touches {

        let sprite = SKSpriteNode(imageNamed:"mySprite")

        sprite.xScale = 0.3
        sprite.yScale = 0.3

        let dotX = (drand48() * Double (view!.scene!.frame.size.width))
        let dotY = (drand48() * Double (view!.scene!.frame.size.height))

        print (dotX)
        print (dotY)

        sprite.position.x = CGFloat (dotX)
        sprite.position.y = CGFloat (dotY)

        self.addChild(sprite)

    }
}
覆盖函数触摸开始(触摸:设置,withEvent事件:UIEvent?){
/*当触摸开始时调用*/
接触{
让sprite=SKSpriteNode(图像名为:“mySprite”)
sprite.xScale=0.3
sprite.yScale=0.3
设dotX=(drand48()*Double(view!.scene!.frame.size.width))
设dotY=(drand48()*Double(view!.scene!.frame.size.height))
打印(dotX)
打印(dotY)
sprite.position.x=CGFloat(dotX)
sprite.position.y=CGFloat(dotY)
self.addChild(精灵)
}
}

你的dotX和dotY怎么说?你的精灵可能就在你身体的边缘screen@Knight0fDragon,这里有几根相当于自来水的原木。最后一个是精灵没有出现的地方(很抱歉格式很糟糕):dotX:405.979928330522 dotY:645.492763707975水龙头位置:(317.913024902344,42.4347839355469)dotX:361.816163579129 dotY:342.976077923746水龙头位置:(724.869567871094,764.521728515625)dotX:326.341398847366 dotY:680.777036715288水龙头位置:(300.869567871094762.434814453125)dotX:15.9568377941287 dotY:448.581289203665水龙头位置:(723.130432128906,4.86959838867188)不知道这些数字的意思,但如果你的y是4,听起来我的理论是正确的,你的场景在你的视野之外,它们是精灵的坐标。点击的位置旨在显示屏幕的边界。你知道我如何限制精灵只出现在屏幕范围内吗?哦,我明白了,所以是的x@15可能不在屏幕上,您的scalemode是什么