簡體   English   中英

隱藏的節點不顯示為childnodewithname

[英]hidden nodes don't show up with childnodewithname

我正在建立一個具有復選框功能的列表,其中復選符號是空復選框的子代。 在touchesBegan:中,每次觸摸復選框,復選框應從隱藏變為未隱藏,然后返回。 代碼如下:

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
    if let touch = touches.first {
        location = touch.locationInNode(self)
        for node in self.nodesAtPoint(location) {
            if node.childNodeWithName("checkSymbol")?.hidden == true {
                node.childNodeWithName("checkSymbol")?.hidden = false
            } else if childNodeWithName("checkSymbol")?.hidden == false {
                node.childNodeWithName("checkSymbol")?.hidden = true
            }
        }
    }
}

問題是當隱藏時, .nodesAtPoint()方法沒有拾取childNode(checkSymbol節點)。 這就是我嘗試使用上述.childNodeWithName()方法解決問題的原因,但仍選中該框以進行后續觸摸。 有沒有人建議如何解決這個問題?

如果希望由nodesAtPoint拾取隱藏節點,則可以隨時更改hidden的實現。

您也可以使用node.zPosition = -1 ,假設您有一個隱藏於zPosition 0的背景節點。

暫無
暫無

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

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