擷取螢幕寬高度:
WindowManager wm = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics outMetrics = new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(outMetrics);
outMetrics.widthPixels
outMetrics.heightPixels
LinearLayout linearLayout = (LinearLayout) findViewById(R.id.linear1);//找到xml上的控件
LinearLayout linearLayout2 = (LinearLayout) findViewById(R.id.linear3);//找到xml上的控件
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(widths,DensityUtils.dp2px(context,40));//設定控件的寬高
ImageView imageView = new ImageView(context);//動态添加imageview控件
imageView.setBackground(getResources().getDrawable(R.mipmap.shishi_lefttup));//設定背景圖檔
ImageView imageview2 = new ImageView(context);
imageview2.setBackground(getResources().getDrawable(R.mipmap.shishi_rightup));
linearLayout.addView(imageView,params);//把控件添加到LinearLayout裡面去
linearLayout2.addView(imageview2,params);
為什麼需要這麼麻煩呢,有時候xml不能滿足現狀的需求
設定控件的寬高度:
先還是要擷取螢幕的寬高度
imageView=(ImageView)findViewById(R.id.imageView1);//擷取目前控件的對象
LinearLayout.LayoutParams params= (LinearLayout.LayoutParams) imageView.getLayoutParams();
//擷取目前控件的布局對象
params.height=width/2;//設定目前控件布局的高度width是螢幕寬度
imageView.setLayoutParams(params);//将設定好的布局參數應用到控件中
這裡把imageview看做是linearlayout的子視圖
不一定是LinearLayout也可以是其他relativelayout也可以的
推薦:http://blog.csdn.net/Djoli/article/details/62417328
http://blog.csdn.net/James_shu/article/details/53363234