每当我尝试跨越布局跨越画布时,我所要做的就是这个
<FloatLayout>:
canvas:
Color:
rgba: 54 / 255, 60 / 255, 72 / 255, 1
Rectangle:
pos: self.pos
size: self.size
我一直在玩,并且无法理解self.pos指的是什么?通过阅读文档,它似乎指向当前小部件,它应该是Rectangle。但是当我进入调试模式时,我注意到self.size的默认值是(100,100)。
答案 0 :(得分:5)
Rectangle不是一个小部件,它是一个画布指令,一个小部件是表示(一组画布指令)+行为(各种方法,如'on_touch_down')。在kv中,self总是指定当前的小部件,所以在这里,FloatLayout。
Widget的默认大小确实是'(100,100)',它默认为任何默认大小。
答案 1 :(得分:3)
小部件的默认大小为100x100和pos [0,0]。 Rectangle
不是小部件,而是canvas
上的指令。所以你使用了一个指令在一个小部件的canvas
上绘制一些东西,默认情况下是[0,0]的100x100。