【问题标题】:Setting SKLabelNode font colour appears to be broken in iOS 9在 iOS 9 中设置 SKLabelNode 字体颜色似乎被破坏了
【发布时间】:2015-09-20 11:12:27
【问题描述】:

自从 iOS 9 更新以来,设置 SKLabelNode 的字体颜色似乎被破坏了。调用它会将文本设置为绿色!

SKLabelNode *labelNode = [SKLabelNode labelNodeWithFontNamed:GameFont];
[labelNode setFontColor:[UIColor blackColor]];

将其设置为[UIColor whiteColor] 会将其变为黄色...获得白色文本的唯一方法是根本不设置颜色。

我试过了:

labelNode.color = [UIColor blackColor];
labelNode.colorBlendFactor = 1;

但这似乎没有任何作用。其他人有这个问题吗?

干杯。

【问题讨论】:

  • GameFont 是自定义字体吗?尝试使用新的 SpriteKit 项目来测试更改字体颜色。
  • GameFont 是一种自定义字体,但我已经用 @"Arial" 尝试过,但颜色仍然不正确...
  • 我用新项目设置字体颜色没有问题。
  • 好的,对于从 Xcode 6 升级的项目来说,这是一个问题吗?我发现了其他问题,比如翻转节点,但我不能简单地创建一个新项目......
  • 您无需开始一个新项目,只需注释一些其他代码或将进行字体设置的代码分开即可缩小问题范围。

标签: objective-c sprite-kit ios9 uicolor sklabelnode


【解决方案1】:

嗯,我想通了。似乎出于某种原因,某些 UIColor 方法只是在 iOS9 中返回了错误的值。通过使用 RGB 值,它可以正确显示。

[labelNode setFontColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:1]];

我不确定为什么 [UIColor blackColor] 显然可以在一个新项目中使用......

【讨论】:

    猜你喜欢
    • 2021-09-22
    • 2021-01-09
    • 2019-08-07
    • 2020-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多