簡體   English   中英

使用SpriteKit不會在觸摸屏幕時返回正確的信息

[英]With using SpriteKit It dosen''t return right information while touching the screen

我正在使用SpriteKit制作游戲,但是在一切正常之前,但是最近在我使其更加合規之后,出現了一些問題。 我在左上角有一個按鈕,當我觸摸該按鈕時,它什么也沒顯示,因此在觸摸屏幕上打印出信息后,我發現它返回的是該區域的nil,甚至沒有返回背景信息,紋理為零,但是如果我觸摸其他區域,則一切正常,信息也一切正常。 所以這是怎么回事,我不明白。

這是我在toucheBegan函數中編寫的一些代碼

     let touchLocation = (touches as NSSet).anyObject()?.locationInNode(self)

    let targetNode = self.nodeAtPoint(touchLocation!)




    print(targetNode)

然后控制台返回以下內容:名稱:'(null)'紋理:['nil']位置:{0,0}比例:{1.00,1.00}尺寸:{1136,640}錨點:{0.5,0.5}旋轉: 0.00

它只發生在此按鈕上,我不知道為什么

聲明按鈕的代碼:

    goRightButton = SKSpriteNode(imageNamed: "GorightButton1")
    goRightButton.anchorPoint = CGPoint(x: 1, y: 0)
    goRightButton.position = CGPoint(x: self.size.width - 200, y: 0)
    goRightButton.name = "Right"
    goRightButton.zPosition = -8
    self.addChild(goRightButton)

如果我在iPhone 6上運行它,則根本沒有按鈕可用! 發生了什么 ? 如果我在帶有IOS9的iPod上運行,它將正常工作。

問題在這條線

goRightButton.zPosition = -8

zPosition更改為大於零,因為有SKNode zPosition比您的goRightButton

goRightButton.zPosition = 999

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM