【问题标题】:buildozer kivy app wont run on android with external kv filebuildozer kivy 应用程序无法在带有外部 kv 文件的 android 上运行
【发布时间】:2017-03-12 15:25:02
【问题描述】:

我是使用 python/kivy 编码的新手。我在通过 kivy buildozer 构建 android 应用程序时遇到问题。

首先,如果我构建应用程序并使用 kivy,例如:

self.asdbut = Button(text="xxxxxx", font_size="70sp")
self.asdbut.bind(on_press=self.aaaaa)
self.add_widget(self.asdbut)

它适用于电脑和安卓手机。

但是,如果我将 kivy builder 用于外部或内部脚本 kv 语言,则应用程序可以在 pc 上运行,但不能在 android 上运行。所以我想我必须通过 buildozer 初始化文件以某种方式将 kivy.lang.builder 添加到 apk 中。我怎样才能做到这一点?

附:我在 buildozer 规范中找到了一行:

# (list) Application requirements
requirements = kivy

所以我尝试在其中包含构建器,但没有成功。

【问题讨论】:

    标签: android python kivy kivy-language buildozer


    【解决方案1】:

    Builder 是类,而不是包。要像 App 类一样加载它(class My(App): -> my.kv),或者以这种方式使用 Builder 加载:

    Builder.load_string('''
    <My>:
        property: value
    ''')
    

    Builder.load_file(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'my.kv'))
    

    【讨论】:

      猜你喜欢
      • 2019-08-03
      • 2020-09-07
      • 2022-09-23
      • 2018-09-25
      • 2017-12-05
      • 1970-01-01
      • 2020-12-30
      • 2021-10-09
      • 2021-11-17
      相关资源
      最近更新 更多