目录
属性¶
Kivy 引入了一种在类中声明属性的新方式。之前:
class MyClass(object):
def __init__(self):
super(MyClass, self).__init__()
self.numeric_var = 1
之后,使用Kivy的属性::
class MyClass(EventDispatcher):
numeric_var = NumericProperty(1)
这些属性实现了`观察者模式 <http://en.wikipedia.org/wiki/Observer_pattern>`_。它们帮助你:
轻松操作在 KV 语言 中定义的控件。
自动观察任何变化,并相应地调度函数/代码。
检查并验证数值。
优化内存管理
要使用它们,你必须在类级别声明它们。也就是说,直接在类中声明,而不是在类的任何方法中。属性是一种类属性,它会自动创建实例属性。每个属性默认提供一个``on_<propertyname>``事件,每当属性的状态/值发生变化时,该事件就会被调用。
- Kivy 提供以下属性:
:
NumericProperty、StringProperty、ListProperty、ObjectProperty、BooleanProperty、BoundedNumericProperty、OptionProperty、ReferenceListProperty、AliasProperty、DictProperty、VariableListProperty、ConfigParserProperty、ColorProperty
如需深入了解,请参阅:doc:/api-kivy.properties。