如何动态加载布局控件

通过解析json,然后通过case判断加载不同的控件,如何该实现呢,求大神帮助

jsonobject解析后,判断呗,然后就该创建啥就创建啥,可以利用反射,把创建什么也可以放到json里

这个~~我也在问同样的问题

这个~~我也在问同样的问题

可以使用jsonobject解析或者是gson解析都行
通过case判断加载不同的控件?可以原本就加载全部控件··然后全部隐藏,需要显示哪个就显示哪个,或者new一个控件出来将其添加到布局中

首先你要确定,动态添加到哪个viewgroup,通过findviewbyid获得那个控件
然后,就是一个个创建控件,再添加到那个viewgroup里。

比方说如下:
for (int i = 1; i <= num; i++) {
TextView listTitle = new TextView(this);
listTitle.setTextColor(getResources().getColor(R.color.black));
listTitle.setTextSize(16);
listTitle.setId(ID_OFFSET+i*5-4);
listTitle.setGravity(Gravity.CENTER|Gravity.LEFT);
listTitle.setPadding(DensityUtil.dip2px(this, 5),DensityUtil.dip2px(this, 10),0,0);
listTitle.setText("文 件:");
RelativeLayout.LayoutParams rlLpsTitle;
rlLpsTitle = new LayoutParams(DensityUtil.dip2px(this, 90),
ViewGroup.LayoutParams.WRAP_CONTENT);
if (i > 1) {
rlLpsTitle.addRule(RelativeLayout.BELOW, ID_OFFSET+i*5-5);
}
lay_file_lists.addView(listTitle, rlLpsTitle);

        ......
}

创建控件,然后创建你想要的布局类型的LayoutParams,上面是RelativeLayout.LayoutParams,也就是说是RelativeLayout。
希望能给你指明方向。