为什么kivy在apk包装后会给出不同的结果?

时间:2018-06-08 17:55:07

标签: python kivy kivy-language buildozer

这是我的自定义小工具: -

<div class="draggable box"></div>
<div class="draggable box"></div>
<div class="draggable box"></div>

并且有主屏幕: -

<Entry@Widget>:
    size_hint: (1, None)
    height: sp(100)
    canvas.before:
        Color:
            rgba: 1, 1, 1, .65
        Rectangle:
            pos: self.pos
            size: self.size

    canvas:
        Color:
            rgba: 1, 1, 1, 1
        Rectangle:
            size: sp(30), sp(30)
            pos: self.right-sp(50), self.center_y
            source: root.status
    Label:
        id: first_letter
        text: root.name[0]
        color: 41/255, 128/255, 185/255, 1
        pos: root.pos
        font_size: sp(50)
    Label:
        text: root.name[1:]
        color: 41/255, 128/255, 185/255, 1
        pos: first_letter.x+sp(70), first_letter.y+sp(40)
        font_size: sp(30)
        size_hint_x: None
        width: sp(200)
        halign: 'left'
        texture_size: self.size
        text_size: self.size
    Label:
        text: root.date
        color: 17/255, 80/255, 122/255, 1
        pos: root.x+sp(50), root.y-sp(10)
        font_size: 10

当我在计算机上运行时,它会输出: -

output in computer

在apk中打包并安装后,似乎: -

output in mobile

我希望这与我的电脑一样。

1 个答案:

答案 0 :(得分:0)

具有不同屏幕尺寸/分辨率的不同计算机可能无法就这些内容的大小达成共识。有时在我的个人项目中,由于这个原因,我会连接第二台更大的显示器。

总是有Android studio,可用来获取仿真器。请记住,它需要为x86编译的.apk文件,而不是armeabi-v7a。这在buildozer规范文件中处理。使用x86进行仿真,使用armeabi-v7a进行电话。