我目前正在摆弄python和cocos2D

我想制作一个带有缩进空间的简单显示器,就像这样

import cocos
from cocos.director import director

class MyLayer(cocos.layer.Layer):

    def __init__(self):
        #Setting the coordinate for the base layer
        self.x = 200
        self.y = 100
        #A first layer of text
        x_basic_text = 0
        y_basic_text = 0
        self.basic_text = cocos.text.Label("Unindented text", x=x_basic_text, y=y_basic_text )
        #A second layer of text
        y_indent_text = -20 #So that it doesn't squeeze with the basic text layer
        x_indent_text = self.basic_text.width/3 #which doesn't work since layers have no width attribute
        self.indent_text = cocos.text.Label("Indented text", x=x_indent_text, y=y_indent_text )

director.init(resizable=True)
director.run( MyLayer() )


我想做的是在第一个标签下面显示第二个标签,然后将第一个标签的三分之一移到右边。

有谁知道我如何获得第一个标签的宽度?

编辑:这是开发人员关于为什么没有明确访问权限的答案的问题。

https://github.com/los-cocos/cocos/issues/282

最佳答案

最合适的似乎是

self.basic_text.element.content_width


从图书馆的快速浏览看来,这似乎被遗忘了。同样在their API中,此参数完全没有记录。

关于python - 如何使用cocos python查找图层宽度/高度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41831063/

10-11 08:41