屏幕适配
时间:2015-07-17 20:44:50
收藏:0
阅读:336
常用的解决方法:
1、java代码中设置宽高度
首先我们要做的是获取当前屏幕的宽高度,因为这个在后面要用到 我们可以写两个静态变量用来保存当前屏幕的宽高度:
public class Constant{ public static int displayWidth; //屏幕宽度public static int displayHeight; //屏幕高度 }
然后在第一个Activity启动的时候,获取这两个值
DisplayMetrics displayMetrics = new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);Constant.displayWidth = displayMetrics.widthPixels;Constant.displayHeight = displayMetrics.heightPixels;
布局代码我们可以全都统一写成wrap-content,其实写成什么都无所谓,因为这个值只是暂时的。
最后我们在Activity的onCreate方法里这么做
// 第一个按钮,宽度100%,高度10%LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, (int) (Constant.displayHeight * 0.1f + 0.5f));btn1.setLayoutParams(params);// 第二个按钮,宽度100%,高度30%LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,(int)(Constant.displayHeight * 0.3f + 0.5f));btn2.setLayoutParams(params2);// 第三个按钮,宽度50%,高度20%LinearLayout.LayoutParams params3 = new LinearLayout.LayoutParams((int) (Constant.displayWidth * 0.5f + 0.5f), (int) (Constant.displayHeight * 0.2f + 0.5f)); btn3.setLayoutParams(params3);// 第三个按钮,宽度70%,高度填满剩下的空间LinearLayout.LayoutParams params4 = new LinearLayout.LayoutParams((int) (Constant.displayWidth * 0.7f + 0.5f), LayoutParams.FILL_PARENT);btn4.setLayoutParams(params4);
2、自定义尺寸法


3、写多布局
为不同的尺寸界面单独写布局

写多个布局的时候,配置文件一定要加上这段配置代码,不然有时可能会出问题
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:anyDensity="true" />
4.weight设置
原文:http://www.cnblogs.com/fruitbolgs/p/4655363.html
评论(0)