获取Android设备屏幕宽、高、dpi密度及横竖屏等参数
发布时间:2020-12-15 00:23:43 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 功能获取Android设备屏幕宽、高、dpi密度及横竖屏等参数代码/*** 系统参数类** @author wader**/public class MySystemParams {private final String
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 功能 获取Android设备屏幕宽、高、dpi密度及横竖屏等参数 代码 /** * 系统参数类 * * @author wader * */ public class MySystemParams { private final String TAG = "SystemParams"; private static MySystemParams params; public int screenWidth;// 屏幕宽度,单位为px public int screenHeight;// 屏幕高度,单位为px public int densityDpi;// 屏幕密度,单位为dpi public float scale;// 缩放系数,值为 densityDpi/160 public float fontScale;// 文字缩放系数,同scale public final static int SCREEN_ORIENTATION_VERTICAL = 1; // 屏幕状态:横屏 public final static int SCREEN_ORIENTATION_HORIZONTAL = 2; // 屏幕状态:竖屏 public int screenOrientation = SCREEN_ORIENTATION_VERTICAL;// 当前屏幕状态,默认为竖屏 /** * 私有构造方法 * * @param activity */ private MySystemParams(Activity activity) { DisplayMetrics dm = new DisplayMetrics(); activity.getWindowManager().getDefaultDisplay().getMetrics(dm); screenWidth = dm.widthPixels; screenHeight = dm.heightPixels; densityDpi = dm.densityDpi; scale = dm.density; fontScale = dm.scaledDensity; screenOrientation = screenHeight > screenWidth ? SCREEN_ORIENTATION_VERTICAL : SCREEN_ORIENTATION_HORIZONTAL; } /** * 获取实例 * * @param activity * @return */ public static MySystemParams getInstance(Activity activity) { if (params == null) { params = new MySystemParams(activity); } return params; } /** * 获取一个新实例 * * @param activity * @return */ public static MySystemParams getNewInstance(Activity activity) { if (params != null) { params = null; } return getInstance(activity); } /** * 参数信息 */ public String toString() { return TAG + ":[screenWidth: " + screenWidth + " screenHeight: " + screenHeight + " scale: " + scale + " fontScale: " + fontScale + " densityDpi: " + densityDpi + " screenOrientation: " + (screenOrientation == SCREEN_ORIENTATION_VERTICAL ? "vertical" : "horizontal") + "]"; } } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |