0

我想请你帮忙。

链接下的可滚动结构是我想要生成的。

由于 Scrollview 只接受一个元素,因此我使用了 GridLayout。不知何故,我不能在 GridLayout 中放置任何 Boxlayout。

你可以帮帮我吗?我做错了吗?我应该使用其他布局吗?如果是,是哪一个?

谢谢你。

这是我的 .kv 文件的输出:http: //imgur.com/etilRPg

这是结果,如果我将 cols:1 更改为 cols:2 :http: //imgur.com/ihWla4Y

这是我在 .kv 文件中尝试的代码:

#:kivy 1.8.0
RootWidget:

    # import container
    container: container

    # fill container
    BoxLayout:
        id: container
        orientation: 'vertical'
        padding: 0
        spacing: 3

        ScrollView:
            size_hint: 1, 1
            pos_hint: {'center_x': .5, 'center_y': .5}


            GridLayout:
                cols: 1
                padding: 0
                spacing: 3
                size_hint: 1, None
                height: self.minimum_height
                do_scroll_x: False

                BoxLayout:
                    height: 260
                    orientation: 'horizontal'
                    canvas.before:
                        Color:
                            rgb: 0.7, 0.7, 0.9
                        Rectangle:
                            size: self.size
                            pos: self.pos


                BoxLayout:
                    height: 260
                    orientation: 'horizontal'
                    canvas.before:
                        Color:
                            rgb: 0.7, 0.7, 0.9
                        Rectangle:
                            size: self.size
                            pos: self.pos


                BoxLayout:
                    height: 260
                    orientation: 'horizontal'
                    canvas.before:
                        Color:
                            rgb: 0.7, 0.7, 0.9
                        Rectangle:
                            size: self.size
                            pos: self.pos

                #type
                Label:
                    height: 260
                    size_hint: 1, None
                    text: 'Typ'

                BoxLayout:
                    height: 260
                    orientation: 'horizontal'
                    canvas.before:
                        Color:
                            rgb: 0.7, 0.7, 0.9
                        Rectangle:
                            size: self.size
                            pos: self.pos
4

1 回答 1

0

如果您想设置大小heightwidth其他任何大小,您需要先在您想要设置它的小部件中做一些事情:

size_hint: None, None

这将禁用根据父级的大小和其他一些内容设置这些属性,即父级中的小部件数量(三个小部件 = 父级大小/每个 3),至少对于布局,如BoxLayoutor GridLayout。检查文档以获取更多信息。

或者,如果您只想设置 or 之一,请使用 or 并让另一部分自动size_hint_x: None设置。size_hint_y: Noneheightwidth

于 2016-06-09T08:07:06.810 回答