Android 图片显示与屏幕适配的问题

Android 图片显示与屏幕适配的问题,第1张

概述Android图片显示屏幕适配的问题在Android开发中比较头疼的是Android的分辨率问题,那么这里给大家介绍个万能办法,这个办法的优点是可以实现万能适应,给开发和美工设计提供了依据,但是对开发来说代码量也不少,

AndroID 图片显示与屏幕适配的问题

在AndroID开发中比较头疼的是AndroID的分辨率问题,那么这里给大家介绍个万能办法,这个办法的优点是可以实现万能适应,给开发和美工设计提供了依据,但是对开发来说代码量也不少,具体办法:

(1)获取屏幕的尺寸

WindowManager windowManager = (WindowManager)     getSystemService(Context.WINDOW_SERVICE);display d = windowManager.getDefaultdisplay();mWIDth = d.getWIDth();mHeight = d.getHeight();displayMetrics dm = getResources().getdisplayMetrics()mScreenDensity = dm.density;

(2)美工设计图的尺寸

uiWIDth,uiHeight

(3)获取缩放比例

float scaleWIDth = mWIDth / uiWIDth;float scaleHeight = mHeight/ uiHeight;

(4)所有布局的尺寸用代码实现:

public static int getWIDthSize(int size) {        return (int) (size * scaleWIDth);    }    public static int getHightSize(int size) {        return (int) (size * scaleHeight);    }    public static float getTextSize(int pxSize) {        return (pxSize * scaleHeight) / mScreenDensity;    }    public static voID setVIEwSize(int wIDth,int height,VIEw v) {        int paramWIDth = getWIDthSize(wIDth);        int paramHeight = getHightSize(height);        VIEwGroup.marginLayoutParams params = (VIEwGroup.marginLayoutParams) v                .getLayoutParams();        if (wIDth != INVALID) {            params.wIDth = paramWIDth;        }        if (height != INVALID) {            params.height = paramHeight;        }        v.setLayoutParams(params);    }    public static voID setVIEwpadding(int left,int top,int right,int bottom,VIEw v) {        left = getWIDthSize(left);        top = getHightSize(top);        right = getWIDthSize(right);        bottom = getWIDthSize(bottom);        v.setpadding(left,top,right,bottom);    }    public static voID setVIEwmargin(int left,VIEw v) {        int paramleft = getWIDthSize(left);        int paramtop = getHightSize(top);        int paramRight = getWIDthSize(right);        int paramBottom = getHightSize(bottom);        VIEwGroup.marginLayoutParams params = (VIEwGroup.marginLayoutParams) v                .getLayoutParams();        if (left != INVALID) {            params.leftmargin = paramleft;        }        if (right != INVALID) {            params.rightmargin = paramRight;        }        if (top != INVALID) {            params.topmargin = paramtop;        }        if (bottom != INVALID) {            params.bottommargin = paramBottom;        }        v.setLayoutParams(params);}

(5)这里是设置尺寸的代码:

setVIEwSize(100,100,mVIEw);    setVIEwmargin(20,20,mVIEw);    setVIEwpadding(10,10,mVIEw);    mTextVIEw.setTextSize(getTextSize(30));

由上在设计效果图时,可对图内元素进行尺寸标注,程序即可实现按比例缩放。

以上就是AndroID 图片显示与屏幕适配的问题的万能解决办法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

总结

以上是内存溢出为你收集整理的Android 图片显示与屏幕适配的问题全部内容,希望文章能够帮你解决Android 图片显示与屏幕适配的问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1144843.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存