Android在java代码中动态改变控件或者布局宽高

有时候,在xml文件中设置布局已经不能满足我们的需求,我们需要在java代码中动态进行布局。这就涉及到一个宽高适配的问题。可以通过获取屏幕的宽高,通过屏幕宽高的相对比例对控件和布局的宽高进行设定:

//获取屏幕宽度
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int width = metrics.widthPixels;
int height = metrics.heightPixels;
//定义布局参数
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
layoutParams.width = (int) (width * 0.42);
layoutParams.height = (int) (height * 0.65);
layoutParams.leftMargin = (int) (width * 0.1);

fileLin.setLayoutParams(layoutParams);

你可能感兴趣的:(Android)