【问题标题】:CCLabelTTF not working in iOS 6.1CCLabelTTF 在 iOS 6.1 中不起作用
【发布时间】:2013-12-02 12:21:54
【问题描述】:

我使用的是cocos2d v0.99.5,iOS部署目标是5.0

当我在 iOS-7.0/5.0 模拟器中使用 Xcode 5.0 运行我的应用程序时,它运行良好。并且我在 iOS-6.1/6.0 模拟器中使用 Xcode 5.0 运行不工作。我检查了断点,它在以下代码处崩溃:

CCLabelTTF *mainGameTitle = [[CCLabelTTF alloc] initWithString:@"REGULAR PACK" dimensions:CGSizeMake(40, 50) alignment:UITextAlignmentLeft fontName:@"Arial Rounded MT Bold" fontSize:20];

它显示如下:

当我写的时候:

CCLOG(@"font names ====> %@",[UIFont familyNames]);

在这一行中,iOS-6.0 和 6.1 中也会出现“EXC_BAD_ACCESS”错误。

我用CCMenuItemFont试过了,这个也显示了上面的崩溃。

它在 7.0 和 5.0 模拟器/设备中工作。 这是什么问题?请帮帮我?

编辑:

我尝试了另一种方法,即

 CCLabelTTF *mainGameTitle = [CCLabelTTF labelWithString:@"REGULAR PACK" fontName:@"Arial Rounded MT Bold" fontSize:20];

我在 labelWithString:fontName:fontSize 方法中再次遇到上述 UIFont 问题。

【问题讨论】:

  • 请检查 CCLabelTTF 的某些方法已弃用...

标签: ios iphone xcode cocos2d-iphone cclabelttf


【解决方案1】:

您使用已弃用的 CCLabelTTF 方法。请参阅下面的屏幕截图

【讨论】:

  • 好的,但是CCLabelTTF的方法太多了。为什么你不尝试。不要在你的项目中使用任何不推荐使用的方法。不推荐使用的方法当时正在工作,但将来它可能会停止。
  • 我终于找到了解决方案。我在 Info.plist 的“应用程序提供的字体”中删除了一些字体。它在所有设备上都运行良好。
【解决方案2】:

不推荐使用的方法指出,在特定版本以下,这将不起作用,不是特别在此方法中,而是在几种方法中,由于操作系统和数据的功能流的变化,它是支持和不支持的。

您可以尝试以下在两个平台上都可以使用的方法

CCLabelTTF *label1 = [CCLabelTTF labelWithString:@"Hello World 1" fontName:@"Marker Felt" fontSize:50];

谢谢

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多