我在这里有这个奇异文件:
<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设置文本格式,但似乎不起作用。希望这可以澄清我的问题:)
答案 0 :(得分:2)
要使用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"
标签的文本重叠,是因为您要在屏幕布局中彼此叠加添加两个标签小部件。
将BoxLayout添加为两个Label小部件的父级,以防止文本重叠。
以一定的宽度包装文本,提供宽度。例如,要在一个宽度为200且高度不受限制的框中创建的标签。
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