接上一篇侧滑,侧滑做好后发现水平状态的match_parent宽度没有充满屏幕 导致删除按钮没有挤到屏幕外,所以出此篇在适配其中获取屏幕宽度并设置给RelativeLayout WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); DisplayMetrics dm = new DisplayMetrics(); wm.getDefaultDisplay().getMetrics(dm); int width = dm.widthPixels; // 屏幕宽度(像素) //int height = dm.heightPixels; // 屏幕高度(像素) float density = dm.density; // 屏幕密度(0.75 / 1.0 / 1.5) //int densityDpi = dm.densityDpi; // 屏幕密度dpi(120 / 160 / 240) // 屏幕宽度算法:屏幕宽度(像素)/屏幕密度 int screenWidth = (int) (10*density)*2; // 根据xml中边距10dp计算px //int screenWidth = (int) (width / density); // 屏幕宽度(dp) //int screenHeight = (int) (height / density);// 屏幕高度(dp) RelativeLayout re = findViewById(R.id.layout_content); //为RelativeLayout设置宽高 RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) re.getLayoutParams(); params.width = width-screenWidth;//单位必须是px // params.height = h; re.setLayoutParams(params);
Android RelativeLayout动态代码中设置宽度高度
最新推荐文章于 2024-07-12 04:24:24 发布