所以我尝试使用 kivy 制作 android .apk 文件,但它只是给我一个黑屏。它一直有效,直到我在 randomnumber.kv 文件中声明根为止。这是我的Python代码:
import kivy
kivy.require("1.9.0")
import random
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
class RandomNumber(App):
def build(self):
return BoxLayout()
class MyRoot(BoxLayout):
def __init__(self):
super(MyRoot, self).__init__()
def generate_number(self):
self.random_label.text = str(random.randint(0, 2000))
randomApp = RandomNumber()
randomApp.run()
我的 randomnumber.kv 看起来像:
<MyRoot>:
random_label: random_label
BoxLayout:
orientation: "vertical"
Label:
text: "Random Number"
font_size: 30
color: 0, 0.62, 0.96
Label:
id: random_label
text: "_"
font_size: 30
Button:
text: "Generate"
font_size: 15
on_press: root.generate_number()
`
我正在使用教程,甚至教程中的代码也不起作用。帮忙!!!
我尝试编辑文件名以及 kivy 文件的调用方式,但它仍然给我带来黑屏。还尝试在各个地方打印语句,但没有任何结果
您的
build()
方法仍然返回空的 BoxLayout
,这只是一个黑屏。你需要改变:
return BoxLayout()
至:
return MyRoot()
注意
kv
语言的语法表示使用 <>
的规则:
使用大括号这是一条规则。没有它们,它就是一个根小部件。
请参阅文档。