使用Kivy开发Android APK出现无报错黑屏问题求助
Kivy开发APK黑屏问题解决
问题根源
- 根部件返回错误:
RandomNumber类的build方法返回原生BoxLayout,而非你在kv文件中定义的MyRoot类,导致kv布局完全未加载,出现黑屏。 - 方法缩进错误:
generate_number函数未被包含在MyRoot类内部,按钮点击时会找不到该方法。
修正后的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): # 返回自定义的MyRoot实例,加载kv文件对应的布局 return MyRoot() class MyRoot(BoxLayout): def __init__(self, **kwargs): # 初始化方法需传入**kwargs,适配Kivy内部初始化逻辑 super(MyRoot, self).__init__(**kwargs) # 将方法归到MyRoot类内部,保证按钮能调用 def generate_number(self): self.random_label.text = str(random.randint(0, 2000)) randomApp = RandomNumber() randomApp.run()
kv文件验证
你的randomnumber.kv文件内容无需修改,只需确保文件名与App类名匹配(App类名为RandomNumber,kv文件名需为小写的randomnumber.kv)。
测试建议
先在本地运行代码,确认界面正常显示、按钮能生成随机数后,再进行APK打包,避免打包后重复排查问题。
内容的提问来源于stack exchange,提问作者user24067968
相关产品推荐
相关产品推荐

