动态增加布局:
private void addLayout(Context context) {
LinearLayout layout = new LinearLayout(context);
//设置宽高属性
LayoutParams fullParams = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
//设置布局方向
layout.setOrientation(LinearLayout.VERTICAL);
//设置背景颜色
layout.setBackgroundColor(getResources().getColor(R.color.black));
int id = 0;
//设置权重
LayoutParams weightParams = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT, 1.0f);
ArrayList<LinearLayout> list = new ArrayList<>();
for (int i = 0; i < line; i++) {
for (int j = 0; j < column; j++) {
LinearLayout tempLayout = new LinearLayout(context);
tempLayout.setBackgroundColor(getResources().getColor(R.color.gray));
tempLayout.setId(id++);//设置id
list.add(tempLayout);
}
}
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT, 1.0f);
params.setMargins(1, 0, 1, 0);
int index = 0;
for (int i = 0; i < line; i++) {
LinearLayout hor = new LinearLayout(context);
for (int j = 0; j < column; j++) {
hor.addView(list.get(index), params);
index++;
}
weightParams.setMargins(0, 1, 0, 1);
layout.addView(hor, weightParams);
}
setContentView(layout, fullParams);
LinearLayout linearLayout = (LinearLayout) findViewById(10);
linearLayout.setBackgroundColor(getResources().getColor(R.color.red));
}