强制Kivy小部件的方向为横向/纵向

时间:2016-04-15 06:09:36

标签: android python-2.7 kivy kivy-language

我正在开发一个应用程序,我希望ScreenManager的一个屏幕处于横向方向。我不希望它自己改为垂直。截至目前,我所学到的只有buildozer.spec文件可以改变应用程序的方向。我想要的是改变小部件的方向。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以在分散布局上放置屏幕内容,然后旋转它:

test.kv:

ScreenManager:

    Screen:
        name: 'normal'

        Grid

    Screen:
        name: 'flipped'

        ScatterLayout:
            do_rotation: False
            do_scale: False
            do_translation: False
            rotation: 90
            pos_hint: {'center_x': 0.5, 'center_y': 0.5}
            size_hint: None, None
            size: root.height, root.width

            Grid


<Grid@GridLayout>:
    cols: 1

    Button:
        text: 'normal'
        on_press: app.root.current = 'normal'
    Button:
        text: 'flipped'
        on_press: app.root.current = 'flipped'

main.py:

#!/usr/bin/env python2
# -*- coding: utf-8 -*-
from kivy.app import App


class Test(App):
    pass


Test().run()

@edit 还有plyer的Orientation