【问题标题】:CCLabelBMFont on CCMenuItemFontCCMenuItemFont 上的 CCLabelBMFont
【发布时间】:2013-04-11 10:41:05
【问题描述】:

我正在尝试将菜单声音上的“经典”标记字体更改为我个人的 fnt 字体。这是我的代码,例如我想更改“resume”和“quit”的字体。

    CCLabelBMFont* label = [CCLabelBMFont labelWithString:@"Paused" fntFile:@"score.fnt"];

    label.position = ccp(240, 160);

    [self addChild: label];

    [CCMenuItemFont setFontName:@"Marker Felt"];
    [CCMenuItemFont setFontSize:35];


    CCMenuItem *Resume = [CCMenuItemFont itemFromString:@"Resume"
                                                 target:self
                                               selector:@selector(resume:)];


    CCMenuItem *Quit = [CCMenuItemFont itemFromString:@"QUIT"
                                               target:self
                                             selector:@selector(GoToMainMenu:)];

好的,使用 CCLabelBMFont 暂停它可以工作,对于另一个它没有。

【问题讨论】:

    标签: iphone xcode string fonts cocos2d-iphone


    【解决方案1】:

    CCLabelBMFont 需要位图字体,而CCMenuItem 需要 普通 字体。

    如果您想从位图字体创建菜单项,您可能首先必须创建一个CCLabelBMFont 并将其包装成一个CCMenuItemLabel

    CCLabelBMFont* label = [CCLabelBMFont labelWithString:@"Resume" fntFile:@"score.fnt"];
    CCMenuItemLabel* item = [CCMenuItemLabel itemWithLabel:label target:self selector:@selector(resume:)];
    

    您也可以试试CCMenuItemAtlasFont,它适用于 atlas 字体

    【讨论】:

      【解决方案2】:

      尝试调用

      [CCMenuItemFont setFontName:@"yourFontName"];
      

      在使用 CCMenuItemFont 创建菜单项之前。

      【讨论】:

      • 取决于您尝试设置的名称。字体名称不是您的 fnt 文件的名称。双击打开您的 fnt 文件。字体的名称将显示在窗口的标题上。并确保您在应用程序的 info.plist 中添加了字体
      • 证明?我现在没有可能运行任何 cocos2d 项目,实际上我无法理解,我为什么要向你证明一些东西。我刚刚浏览了文档并建议您尝试这种方法。但是你不想自己做任何事情。
      • 我试过 score 和 score.fnt。我确定名称是 score.fnt,但它不起作用。谢谢。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-13
      相关资源
      最近更新 更多