Android 在attrs.xml中声明自定义视图属性有什么好处?

Android 在attrs.xml中声明自定义视图属性有什么好处?,android,android-layout,android-view,Android,Android Layout,Android View,我目前正试图理解为什么需要在attrs.xml文件中定义视图的自定义属性。当我在自定义视图类中使用getter和setter创建属性时,我已经可以在XML布局中使用该属性了。此外,我不需要从TypedArray中检索构造函数中的值。您可以使用数据绑定来实现这一点,但数据绑定并不总是存在的。这就是为什么自定义属性是可用的,但我不会说它们一定比数据绑定有任何好处。我不知道你认为你是如何神奇地获得这一功能的,但是编写getFoo()和setFoo()并不能使Foo成为xml中的属性。啊,好吧,我对An

我目前正试图理解为什么需要在attrs.xml文件中定义视图的自定义属性。当我在自定义视图类中使用getter和setter创建属性时,我已经可以在XML布局中使用该属性了。此外,我不需要从TypedArray中检索构造函数中的值。

您可以使用数据绑定来实现这一点,但数据绑定并不总是存在的。这就是为什么自定义属性是可用的,但我不会说它们一定比数据绑定有任何好处。我不知道你认为你是如何神奇地获得这一功能的,但是编写getFoo()和setFoo()并不能使Foo成为xml中的属性。啊,好吧,我对Android数据绑定的概念相当陌生。因此,如果attrs.xml中没有定义,getter/setter属性只能与@{..}一起使用?对。这些注释将自动为您生成属性。(无论如何,这很好。我还不太熟悉数据绑定库。)