我创建了一个包含任意子视图的自定义 ViewGroup,并且预计会填充它们。它需要知道它的孩子的 id,所以我在 arrays.xml 中定义了一个 id 数组,并将该数组作为属性传递给我的自定义组,如下所示:
my_layout.xml:
<com.example.MyLayout
...
custom:children="@array/four_children">
<TextView ...
android:id="@+id.child1" />
<TextView ...
android:id="@+id.child2" />
<TextView ...
android:id="@+id.child3" />
<TextView ...
android:id="@+id.child4" />
</com.example.MyLayout>
数组.xml:
<array name="four_children">
<item>@id/child1</item>
<item>@id/child2</item>
<item>@id/child3</item>
<item>@id/child4</item>
</array>
我选择这种方法是因为设计目标之一是完全在 xml 中定义布局。
基本上我的问题是,使用这样的 View id 数组是反模式还是危险的?