我一直在查看Corona文档,但是我没有看到任何可以改变display.newText对象字体样式的东西。我知道当您第一次创建对象时,您可以将字体参数设置为您喜欢的任何值。我知道您还可以通过将字体名称添加到构建设置文件来自定义字体。但是,我想要做的是在声明display.newText之后更改文本的字体样式。我尝试的是这样的:
local text = display.newText("title", display.contentWidth/2, display.contentHeight/2, native.systemFont, 12)
text.font = "Comic Sans MS"上面的代码在终端中没有给出任何错误,但是字体没有改变。你知道该怎么做吗?
发布于 2012-06-18 13:10:26
有关如何使用自定义字体http://www.coronalabs.com/blog/2011/07/13/custom-fonts-corona/,请参阅此tut
编辑
好的。我没有完全读完你的问题。您想要动态更改字体。我想唯一的方法是删除显示对象,然后用新字体重新插入它。
就像这样
local text = display.newText("title", display.contentWidth/2, display.contentHeight/2, native.systemFont, 12)
--After some time
local txt = text.text
local size = text.size
local left = text.contentBounds.xMin
local top = text.contentBounds.yMin
text:removeSelf()
text = display.newText(txt, left, top, "Comic Sans MS",size)发布于 2012-06-16 07:13:03
The Text object doesn't support that.。它通常有一个贫血的界面(你可以在该页面上看到5个月前的相关投诉)。See here, as well.
(附注:如果您是一位经验丰富的开发人员,并且还没有深入到项目中,一种替代方案是切换到MOAI,它是免费的、开源的,具有更多的因素,更灵活的API。你可以完全控制文本(MOAITextBox,MOAITextStyle,MOAIFont)等等。然而,它的用户友好性也差得多。)
https://stackoverflow.com/questions/11058127
复制相似问题