0
我有一个垂直的LinearLayout,我想用水平LinearLayouts(它像行一样)填充。其中每一个都应该有效地相同,除了它们中的几个项目使用一个数字,每次都应该增加。重复LinearLayout有轻微变化
例如:
<LinearLayout android:id="@+id/row1" >
<SeekBar
android:id="@+id/seekBar"
android:tag="1"
/>
</LinearLayout>
<LinearLayout android:id="@+id/row2" >
<SeekBar
android:id="@+id/seekBar"
android:tag="2"
/>
</LinearLayout>
<LinearLayout android:id="@+id/row3" >
<SeekBar
android:id="@+id/seekBar"
android:tag="3"
/>
</LinearLayout>
在JavaScript中,我可能会使用这样的事情“自动”他们的创作:
for (var i = 0; i < count; i++) {
child = document.createElement("div");
child.id = "row" + i;
parent.appendChild(child);
}
是否有“自动”的这些创作的方式,这样我可以只有一个“模型”,然后迭代几次,每次都传入数字?我可以使用基于Java或基于XML的解决方案。
我已经尝试使用每一个,它解决了问题的一部分,但无法找到一种有效的方法来'传入'每次不同的数字。 (这些数字用于识别来自Java的行内的输入 - 如果有更好的方法来管理这些,那也可能有帮助)。
如果我希望能够在不同的片段中做到这一点,该代码是否应该在fragment.onCreate()方法或其他地方运行?我该如何使用findViewById()(或以其他方式访问布局)在该方法中(或在哪里运行)? – ZSmith
其他地方。您需要将ID存储在全局变量中,您的系统可以将该ID回叫,您还需要将类或ID“布局”存储到全局变量以供将来处理。你也可以得到所有的孩子,并检查类的类型:https://stackoverflow.com/questions/8395168/android-get-children-inside-a-view – slee