有时候,在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);