Android 开发 代码动态加载布局
动态加载布局分为导入xml控件和新建控件两种,添加至原布局中,适用于动态变化的界面和不适合用xml固定布局的情况
1、自己新建xml布局并与原来的activity所显示的布局相关联
LayoutInflatermInflater=LayoutInflater.from(MyActivity.this);//初始化LayoutInflater MyActivity即当前所在Activity
View view=mInflater.inflate(R.layout.myview);//新建view 并从xml布局文件中初始化布局(自定义效果的布局文件)
TextViewtextView=(TextView)view.findViewById(R.id.text);初始化textView(需要的布局控件)
textView.setText("自定义");
LinearLayout layout=(LinearLayout)findViewById(R.id.linearlayout);//布局中初始化linearLayout控件
layout.setOrientation(LinearLayout.HORIZONTAL);
layout.addView(view);//添加到布局
2、新建view控件添加到原来的布局中
LinearLayout layout=(LinearLayout)findViewById(R.id.linearlayout);//布局中初始化linearLayout控件
layout.setOrientation(LinearLayout.HORIZONTAL);设置线性布局为横向还是纵向
ImageView img=new ImageView(MyActivity.this);//新建ImageView控件
LayoutParams mParams= newLayoutParams(width,height );//创建参数对象,with,height为控件的宽高,参数为整型
img.setLayoutParams(mParams);//利用参数对象设置控件的参数
layout.addView(img);//将新建的ImageView对象添加到已有控件中