android 动态 布局
16lz
2021-01-23
动态增加布局:
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++);//设置idlist.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));}
更多相关文章
- android:布局参数,控件属性及各种xml的作用
- Android布局案例之人人android九宫格
- Android中布局的巧妙设计【android进化二十六】
- Android之LinearLayout线性布局
- 深入探索Android布局优化(下)
- 布局与样式
- Android 学习笔记--android――listview的多种行布局的复用
- android常用布局设置