我正在使用 Kivy 开发一个 Android 应用程序,我想知道如何在 Scrollview 中添加 MDCard?目前我正在使用 kivyMD 和 Kivy

Posted

技术标签:

【中文标题】我正在使用 Kivy 开发一个 Android 应用程序,我想知道如何在 Scrollview 中添加 MDCard?目前我正在使用 kivyMD 和 Kivy【英文标题】:I am developing an Android app using Kivy and I wanted to know that how can I add MDCard in Scrollview? Currently I am using kivyMD and Kivy 【发布时间】:2020-12-22 07:20:59 【问题描述】:

每当我尝试此代码时,我都会收到错误,而且如果我只保留 MDCard,那么它也会出现,但不会出现在 Scrollview 中。 这是我的代码:

ScrollView:

    do_scroll_x: False
    do_scroll_y: True

    Label:
        size_hint_y: None
        height: self.texture_size[1]
        text_size: self.width
        padding: 10, 10
        text:
            'My text\n' * 100
    MDCard:
        Label:"Hello"

【问题讨论】:

附上人们可以运行的最小示例代码并查看您在此处描述的错误。还要附上错误本身的文本。 【参考方案1】:

来自ScrollView documentation:

ScrollView 只接受一个孩子

这可能是您的错误的原因。在您的 kv 文件中尝试这样的操作:

ScrollView:

    do_scroll_x: False
    do_scroll_y: True

    BoxLayout:
        orientation: 'vertical'
        size_hint_y: None
        height: self.minimum_height
        Label:
            canvas.before:
                Color:
                    rgba: 1,0,0,1
                Rectangle:
                    pos: self.pos
                    size: self.size
            size_hint_y: None
            height: self.texture_size[1]
            padding: 10, 10
            text:
                'My text\n' * 100
        MDCard:
            Label:
                text: "Hello"
                size_hint: 1, None
                height: self.texture_size[1]

【讨论】:

以上是关于我正在使用 Kivy 开发一个 Android 应用程序,我想知道如何在 Scrollview 中添加 MDCard?目前我正在使用 kivyMD 和 Kivy的主要内容,如果未能解决你的问题,请参考以下文章

使用 kivy 使用 G+ (Google+) 注册

如何在 android 中调试 kivy 应用程序?

通过 pyjnius 在 kivy 中使用 MediaStore

如何将 kivy 应用程序连接到 Android 已安装的应用程序

在移动设备上运行 apk 后,python kivy android 应用程序崩溃

如何为 kivy/python apk 选择包名?