ScatterLayout为分散布局,与RelativeLayout布局类似,当改变位置时,布局内的控件也会随着父布局一起移动。ScatterLayout布局主要有Scatter来实现,所以可以进行平移,旋转,缩放布局。
示例,利用布局实现图片缩放和旋转。
创建scatter.kv文件,代码如下,设置背景色为白色,布局内使用图片,图片的路径为.kv 的同级目录
<ScatterLayoutWin>: canvas: Color: rgba:[1,1,1,1] Rectangle: size:self.size pos:self.pos ScatterLayout: Image: source:"14.jpg"
.py文件代码
from kivy.app import App from kivy.uix.boxlayout import BoxLayout class ScatterLayoutWin(BoxLayout): def __int__(self,**kwargs): super().__init__(**kwargs) class ScatterApp(App): def build(self): return ScatterLayoutWin() if __name__=="__main__": ScatterApp().run()
运行如下