java动态地将多个按钮添加到多个LinearLayout
我想动态地将按钮添加到不同的LinearLayout(使用Java),但在此之前,我必须将LinearLayout
添加到主视图中,顺便说一下,主视图也是LinearLayout
这是我的密码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.game);
globalLinear = (LinearLayout) findViewById(R.id.viewButtons);
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
LinearLayout row = (LinearLayout) inflater.inflate(R.layout.row_buttons, globalLinear);
for(int i = 1; i <= nbButton; i++) {
if(i % 3 == 0) {
row = (LinearLayout) inflater.inflate(R.layout.row_buttons, globalLinear);
}
Button b = new Button(this);
int number = generator.nextInt(complexity);
b.setText(number+"");
row.addView(b, new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT) );
}
}
R.id.viewButtons
是内部的主(垂直)LinearLayout
。
R.layout.row_buttons
是一个水平LinearLayout
正如您在上面所看到的,我正在尝试使用(i % 3 == 0)
为每个LinearLayout
获取3个按钮
但新的LinearLayout
似乎从未被创建过
谢谢你的帮助:)
# 1 楼答案
您可能需要定义线性布局,在循环中创建它的新实例,以便在循环执行时创建它