You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kivy中自定义Playlist所在的ScrollView无法滚动该如何修复?

Kivy ScrollView 按钮区域无法滚动解决方案

问题根因

ScrollView 可滚动的核心前提是内部子容器的尺寸大于 ScrollView 本身的可视区域尺寸。你当前使用的 PlayList 继承自 BoxLayout,默认垂直方向尺寸自适应(size_hint_y 默认为1),会自动缩放到和 ScrollView 高度一致,所有按钮被挤压在可视区域内,因此无法触发滚动。
界面截图

解决方案

仅需要修改KV文件中 PlayList 的规则,关闭垂直方向尺寸自适应,并且让布局高度自动匹配内部子控件总高度即可,修改后的KV代码如下:

<PlayList>:   #核心修改区域
    size_hint: 1, None
    height: self.minimum_height

说明

  • size_hint: 1, None 关闭垂直方向的尺寸自适应,允许自定义布局高度
  • self.minimum_height 是 BoxLayout 的内置属性,会自动计算所有子控件的高度之和作为布局的最小高度,10个按钮总高度为1000dp,超过 ScrollView 可视高度后就会自动触发滚动,按钮也不会再被挤压变形。
  • 你现有Python代码中按钮已经设置了固定高度和size_hint_y=None,无需额外修改。

内容的提问来源于stack exchange,提问作者user14232195

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 02:45:07