我可以为SKSpriteNode添加边框,类似于UIView吗?

问题描述 投票:8回答:2

我有兴趣是否可以使SKSpriteNode模仿UIView的行为,我可以指定边界和角半径?

    self.view.layer.borderColor = [UIColor lightGrayColor].CGColor;
    self.view.layer.borderWidth = 2;;
    self.view.layer.cornerRadius = 2;
    self.view.layer.masksToBounds = YES;
ios cocoa-touch sprite-kit border
2个回答
4
投票

不是原生的。虽然你可以添加一个SKShapeNode作为你用path创建的CGPathCreateWithRoundedRect的孩子。


7
投票

以下是SKSpriteNode的简单dropin扩展,它允许您在节点周围绘制具有给定颜色的边框。

import SpriteKit

extension SKSpriteNode {
    func drawBorder(color: UIColor, width: CGFloat) {
        let shapeNode = SKShapeNode(rect: frame)
        shapeNode.fillColor = .clear
        shapeNode.strokeColor = color
        shapeNode.lineWidth = width
        addChild(shapeNode)
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.