我有一个自定义Button Widget,它被定义为python类和kivy标记。我希望将字体设置为默认大小(假设为'50sp'
),除非将font_size
参数传递给Button,在这种情况下,字体大小应该是传递的值。代码如下:
蟒:
class Custom_Button(Button):
...
kivy:
<Custom_Button>:
...
font_size = self.font_size if self.font_size else '50sp'
问题在于它永远不会达到'50sp'条款。如果在创建Button对象时没有将font_size参数传递给它,则将使用kivy的默认字体大小。任何导致这种行为的原因和建议怎么做?谢谢。
答案 0 :(得分:1)
为什么不将self.font_size设置为50sp?这样,除非用户提供了某些内容,否则它始终是默认值。
class Custom_Button(Button):
font_size = NumericProperty('50sp')
您也可以用kv语言执行此操作,我认为用户提供的值仍将覆盖您在此处提供的任何默认值:
<Custom_Button>:
font_size: sp(50)