我这里有这个kivy文件:
<Help>:
Label:
text: "[b]Help Page[/b]\n"
font_size: 30
markup: True
valign: "top"
color: 0,0,0,1
Label:
text: "[b] How To Use:[/b]\n"
font_size: 30
markup: True
valign: 'top'
color: 0,0,0,1
但是,文本不会出现在页面顶部。这是输出:
这有什么问题?我也可以询问如何格式化这些重叠的文本。谢谢 :)
编辑:这是我想要发生的文字:
期望的输出
因此,为了获得该结果,我尝试使用valign和halign来格式化文本,但它似乎不起作用。希望这澄清了我的问题:)
要使用valign:'top'在顶部显示文本,请将text_size: root.width, None
替换为text_size: root.width, root.height
<Help>:
Label:
id: help
text_size: root.width, root.height
markup: True
valign: 'top'
halign: 'center'
color: 0,0,0,1
要显示两个字符串,“如何操作:这里有些文字”和“有些标题更多文字”作为一个,我们将执行以下操作:
<Help>:
Label:
id: help
text_size: root.width, None
markup: True
halign: 'center'
color: 0,0,0,1
class Help(Screen):
def on_pre_enter(self, *args):
self.ids.help.text = "[size=30][b]How to Operate[/b][/size]\nSome text here" + \
"\n\n[size=30][b]Some title[/b][/size]\nSome more text"
Label的文本是重叠的,因为您要在屏幕布局中相互添加两个Label小部件。
添加BoxLayout作为两个Label小部件的父级,以防止文本重叠。
将文本包裹在一定宽度,提供宽度。例如,要在宽度= 200且高度不限的框中创建Label。
Label(text='Very big big line', text_size=(200, None))
<Help>:
BoxLayout:
orientation: 'vertical'
Label:
text_size: dp(230), None
height: self.texture_size[1]
text: "[size=30][b]How to Operate[/b][/size]Some text here"
markup: True
valign: "top"
halign: 'center'
color: 0,0,0,1
Label:
text_size: dp(150), None
text: "[size=30][b]Some title[/b][/size]Some more text"
markup: True
valign: 'top'
halign: 'center'
color: 0,0,0,1
添加text_size: self.size
<Help>:
Label:
text_size: self.size
text: "[b]Help Page[/b]\n"
font_size: 30
markup: True
valign: "top"
color: 0,0,0,1
Label:
text_size: self.size
text: "[b] How To Use:[/b]\n"
font_size: 30
markup: True
valign: 'top'
color: 0,0,0,1