我们以LinearLayout布局为例,来探讨这个问题:
大家都知道LinearLayout是继承于ViewGroup,那么LinearLayout所能用的属性又是从哪里来的呢?
让我们打开android源码所在的路径:frameworks/base/core/res/res/values/atts.xml,在该文件中我们不妨看到这样的节点和属性:
<declare-styleable name=”LinearLayout_Layout”>
<attr name=”layout_width”/>
<attr name=”layout_height”/>
<attr name=”layout_weight” format=”float”/>
<attr name=”layout_gravity”/>
</declare-styleable>