首页 > 解决方案 > 动态调整图像 Kivy

问题描述

我希望我的图像在调整窗口大小时调整大小和重新定位,当我调整窗口的宽度时我已经让它调整大小和重新定位但是当我缩小高度时,图像不会移动并开始运行离开屏幕。

我在这里阅读了许多调整大小的答案,但无法理解它们


FloatLayout:
        Image:
            pos_hint: {"x": 0.25, "y": 0.6}
            source: 'card.jpg'
            size_hint: 0.45, None
            size: self.texture_size[1]

标签: pythonpython-3.xkivykivy-language

解决方案


宽度调整有效,因为您已将 size_hint 设置为 0.45。此条件用于在 FloatLayout 更改宽度时自动更新实际图像宽度,并且 FloatLayout 是根小部件,因此其宽度会自动跟踪 Window。

相反,您已将垂直 size_hint 设置为 None。这明确意味着当 FloatLayout 高度变化时不要更新高度。尝试将其设置为 0.5 之类的值。如果那不是您想要的,请再问一个关于您想要什么的问题。

size: self.texture_size[1]

这不起作用,因为size需要一个 (width, height) 的元组,但self.texture_size[1]它是一个浮点值。我认为这实际上会崩溃,这是一个真实的例子吗?

您可能的意思是height: self.texture_size[1],它将图像高度设置为其显示图像的实际高度(以像素为单位)。但是,这显然不是您想要的,因为您希望它的高度不固定,而是随 Window 缩放。


推荐阅读