Я сделал макет прокручиваемого окна, но он не прокручивается - PullRequest
0 голосов
/ 27 декабря 2018

Я создаю прокручиваемый макет блока в Kivy, но он не прокручивается даже после помещения макета блока в ScrollView

from kivy.app import App
from kivy.lang import Builder
from kivy.base import runTouchApp
from kivy.uix.button import Button
from  kivy.uix.scrollview import ScrollView
kv = '''
ScrollView:
##    size=(root.width, root.height)
    do_scroll_y: True
    BoxLayout:
        orientation: 'vertical'

        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'
        Label:
            size_hint: (1,None)
            size: (100,100)
            text: 'my text'

class theApp(App):
    def build(self):
        return runTouchApp(Builder.load_string(kv))
if name == 'main':
    theApp().run()

Ожидаемый результат - макет блока с прокруткой.но фактический результат не прокручивается.После поиска ScrollView я обнаружил, что мне просто нужно поместить макет внутри него, и он работает легко, но в данном случае это не так.Дайте мне знать, в чем моя ошибка в этом.

1 Ответ

0 голосов
/ 27 декабря 2018

Попробуйте задать для нашего виджета BoxLayout ограничение по высоте и установите для свойства size_hint_y нашего виджета BoxLayout значение None.

BoxLayout:
    size_hint_y: None
    height: self.minimum_height

    ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...