После добавления элементов прокрутка не работает - PullRequest
0 голосов
/ 16 апреля 2019

У меня есть приложение, в которое я поместил scrollview, но когда я вставляю элементы динамически, они появляются, но scrollview не работает.Если кто-то может сказать, что не так с моим кодом, вот код моего прокрутки:

Я пробовал подсказки размера, do_scroll_x и другие вещи.

<WorkWidget>:
    orientation: "vertical"
    spin_type: spinner_types
    mat_in: txt_in_material
    qt_in: txt_in_Qt
    spin_qt: spinner_Qt
    spin_ci: spinner_CI
    work_layout: work_boxlayout
    canvas:
        Color:
            rgb: [0, 0, 1, 1]
        Rectangle:
            pos: self.pos
            size: self.size
    ScrollView:
        BoxLayout:
            orientation: "vertical"
            id: work_boxlayout
            padding: dp(2)
            spacing: dp(2)
            GridLayout:
                cols: 5
                rows: 1
                padding: dp(2)
                spacing: dp(2)
                height: self.minimum_height
                size_hint_y: None
                Spinner:
                    id: spinner_types
                    text: "F+M+R"
                    values: ("F+R", "M+R", "")
                    height: dp(40)
                    size_hint_x: 0.15
                    size_hint_y: None
                CustomTxtIn:
                    id: txt_in_material
                    hint_text: "Mat�riel"
                CustomTxtIn:
                    id: txt_in_Qt
                    hint_text: "Qt"
                    size_hint_x: 0.15
                Spinner:
                    id: spinner_Qt
                    text: "pc(s)"
                    values: ("m")
                    height: dp(40)
                    size_hint_x: 0.15
                    size_hint_y: None
                Spinner:
                    id: spinner_CI
                    text: "CI11"
                    values: ("CI12", "CI13", "CI20", "CI21", "CI22")
                    height: dp(40)
                    size_hint_x: 0.15
                    size_hint_y: None
    BoxLayout:
        padding: dp(2)
        spacing: dp(2)
        height: self.minimum_height
        size_hint_y: None
        CustomButton:
            id: bt_add_work
            text:"+"
            on_press: app.root.add_work_line()
        CustomButton:
            id: bt_add_section
            text:"Section"
            on_press: app.root.add_work_section()

А вот как элементывставляются динамически:

def add_work_layout_child(self):
        '''Adicionar uma linha de trabalho'''

        grid = GridLayout(cols=5)
        spin_type = Spinner(text="teste")
        text_in_material = TextInput()
        text_in_qt = TextInput()
        spin_qt = Spinner(text="teste")
        spin_ci = Spinner(text="teste")

        grid.add_widget(spin_type)
        grid.add_widget(text_in_material)
        grid.add_widget(text_in_qt)
        grid.add_widget(spin_qt)
        grid.add_widget(spin_ci)

        self.work_layout.add_widget(grid)

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

Если кто-то может мне помочь, я буду благодарен.С наилучшими пожеланиями.

...