您的位置:首页 > 移动开发 > Android开发

[置顶] 关于Android屏幕适配的问题

2016-08-15 20:49 417 查看
Android由于屏幕设备的种类多种多样,不像Ios那边只需要适配几种型号的机器即可。

对于屏幕的适配,特别是针对于既有ios、又需要有Android的移动应用开发来说,适配更是存在着问题。

在此,可以利用一种简单的解决方案来简化问题,达到pad和phone手机的简单适配的效果。

可根据 DisplayMetrics metric = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metric);
int width = metric.widthPixels; // 屏幕宽度(像素)
int height = metric.heightPixels; // 屏幕高度(像素)利用ration = width/height 
来判断是否为4:3的pad设备,还是16:9或者其他的设备(目前市场上大多数主流设备都是这样,pad趋近于4:3,而phone趋近于16:9,当然也有魅族的16:10的)

然后可以根据ration作为判断的条件进行pad和phone的适配。

既然只固定的区分为两类,那么只需要提供两套资源。这两套资源如何能够适当的展示在不同屏幕上方呢?

答案是:按比例缩放。根据提供的相应资源的大小,与所用设备的大小计算出X、Y的缩放比。ScaleX,ScaleY.计算出应该在设备上显示的资源的大小width、height,然后利用XX.LayoutParams xx = new XX .LayoutParams(width,height),进行资源的缩放。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: