ios - SpriteKit 按钮保持按下状态

标签 ios swift sprite-kit

我制作了两个按钮(leftBtn 和 rightBtn)。它们在按下和按下时工作正常。但是,当您按住,然后将手指从按钮上移开并按下时,按钮会保持按下状态吗?

这是touchDown和touchUp的代码

func touchDown(atPoint pos : CGPoint) {
    let rightBtn = childNode(withName: "rightBtn");
    let leftBtn = childNode(withName: "leftBtn");

    if(rightBtn?.frame.contains(pos) == true){
        right = true;
    }
    else if(leftBtn?.frame.contains(pos) == true){
        left = true;
    }
}

func touchMoved(toPoint pos : CGPoint) {

}

func touchUp(atPoint pos : CGPoint) {
    let rightBtn = childNode(withName: "rightBtn");
    let leftBtn = childNode(withName: "leftBtn");

    if(rightBtn?.frame.contains(pos) == true){
        right = false;
        carController.stopMove();
    }
    else if(leftBtn?.frame.contains(pos) == true){
        left = false;
        carController.stopMove();
    }
}

最佳答案

按钮保持按下状态,因为按钮上不再发生向上触摸(即手指向上移动并离开屏幕)。相反,它出现在您 View 的其他部分。如果您不希望按钮保持按下状态,请考虑将代码也添加到 touchesMoved 方法。

关于ios - SpriteKit 按钮保持按下状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46007505/

相关文章:

ios - 使用 Web 服务获取 CoreData 后台?

iOS:我可以检测用户所在的国家/地区吗?

xcode - 是否可以在 El Capitan 上运行 Xcode 6.3?

ios - 在 spriteKit swift 中使用 waitForDuration()

swift - 确实需要有关 UITouch(Sprite Kit)的帮助

ios - iOS 10 中 setValue 后 CIFilter 未更新

ios - 数组中的数组(二维数组?)

ios - 无法从应用商店更新到Xcode 9-该产品暂时不可用

swift - AWS Mobile Hub Google 身份验证 iOS

iOS 编程 : Making an arc4_random not repeat itself using a do while loop