带有2个GUI的P4a Kivy相机

时间:2016-10-29 18:32:14

标签: android python kivy buildozer

我是这里的新手,所以请温柔。我想使用kivy内置的Android摄像头,所以在拍完照片之后,我想使用另一个GUI。该应用程序在Ubuntu上运行良好,但没有相机。当我打包它,它是成功的,但安装后立即崩溃。

这是一个片段:

import kivy
from PIL import Image
from math import trunc
from PIL.ExifTags import TAGS
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
from kivy.uix.floatlayout import FloatLayout


Builder.load_string("""
<CAM_GUI>:
    BoxLayout:
        orientation: 'vertical'
        Camera:
            id: camera
            resolution: (960, 1280)
            play: False
        Button:
            text: 'Shoot!'
            on_press: root.shoot()
            size_hint_y: None
            height: '48dp'
<GUI>:
    BoxLayout:
        orientation: 'vertical'
        padding: 10
        spacing: 10
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 1.A
                source: 'checks.png'
            Image:
                id: 1.B
                source: 'checks.png'
            Image:
                id: 1.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 2.A
                source: 'checks.png'
            Image:
                id: 2.B
                source: 'checks.png'
            Image:
                id: 2.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 3.A
                source: 'checks.png'
            Image:
                id: 3.B
                source: 'checks.png'
            Image:
                id: 3.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 4.A
                source: 'checks.png'
            Image:
                id: 4.B
                source: 'checks.png'
            Image:
                id: 4.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 5.A
                source: 'checks.png'
            Image:
                id: 5.B
                source: 'checks.png'
            Image:
                id: 5.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 6.A
                source: 'checks.png'
            Image:
                id: 6.B
                source: 'checks.png'
            Image:
                id: 6.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 7.A
                source: 'checks.png'
            Image:
                id: 7.B
                source: 'checks.png'
            Image:
                id: 7.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 8.A
                source: 'checks.png'
            Image:
                id: 8.B
                source: 'checks.png'
            Image:
                id: 8.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 9.A
                source: 'checks.png'
            Image:
                id: 9.B
                source: 'checks.png'
            Image:
                id: 9.C
                source: 'checks.png'
        BoxLayout:
            orientation: 'horizontal'
            Image:
                id: 10.A
                source: 'checks.png'
            Image:
                id: 10.B
                source: 'checks.png'
            Image:
                id: 10.C
                source: 'checks.png'
        Button:
            text: 'Javit!'
            on_press: root.main()
""")

class CAM_GUI(BoxLayout):
    def shoot(self):
        gui.clear_widgets()
        gui.add_widget(GUI(name='mainboxlayout'))


class GUI(BoxLayout):
    def main(self):
        pass

gui = BoxLayout(orientation='vertical')
gui.add_widget(CAM_GUI(name='camboxlayout'))

class checkApp(App):
    def build(self):
        return gui


if __name__=='__main__':
    app=checkApp()
    app.run()
你能帮助我吗?非常感谢你提前! :)

最诚挚的问候, 3wnj9u3

1 个答案:

答案 0 :(得分:0)

  

ImportError:没有名为PIL的模块

靠近日志的末尾。将该包放入需求中,再次打包并运行。

为了更好的日志(更清洁,更短)使用:

adb logcat -c && adb logcat
<run app>
<app crashes>
Ctrl + C