0

中央に配置したい SKLabelNode がありますが、十分に文書化された「ジッター効果」を取り除くために、ラベルノードを左と下に揃える必要がありました。現在、次の関数を使用してノードの位置を割り当て、ノードを配置することでシーンをセットアップしています。

  func gridPointX(xPoint:CGFloat, pointY:CGFloat) -> CGPoint  {

    var xDivision:CGFloat = CGRectGetMaxX(frame)/5.0
    var yDivision:CGFloat = CGRectGetMaxY(frame)/5.0
    return CGPointMake(xPoint*xDivision, pointY*yDivision)



}

次のコードを使用して「ジッター効果」を削除するまで、これは正常に機能します。

   myDateLabel.horizontalAlignmentMode = SKLabelHorizontalAlignmentMode.Left
   myDateLabel.verticalAlignmentMode = SKLabelVerticalAlignmentMode.Bottom

次の方法で、x と y の位置をコードに手動で入力しようとしました。

myDateLabel.position = self.gridPointX(0, pointY: 3.6)

ただし、これにより、デバイスの種類に応じて異なるラベル位置が生成されます。SKLabelNode の長さを計算できれば、間違いなく中心を特定できます。ドキュメントを検索しましたが、解決策が得られません。何か考えはありますか?

4

0 に答える 0