From 42ea59771a54d2591df0a6dd3936dda669be99ae Mon Sep 17 00:00:00 2001
From: gs <3129367635@qq.com>
Date: 星期一, 08 七月 2024 12:23:48 +0800
Subject: [PATCH] 会议统计接入增加,删除,修改接口
---
app_base/src/main/java/com/android/app_base/utils/ScreenSizeUtils.java | 62 ++++++++++++++++++++++++++++++
1 files changed, 61 insertions(+), 1 deletions(-)
diff --git a/app_base/src/main/java/com/android/app_base/utils/ScreenSizeUtils.java b/app_base/src/main/java/com/android/app_base/utils/ScreenSizeUtils.java
index 67634fb..22ac83d 100644
--- a/app_base/src/main/java/com/android/app_base/utils/ScreenSizeUtils.java
+++ b/app_base/src/main/java/com/android/app_base/utils/ScreenSizeUtils.java
@@ -1,8 +1,17 @@
package com.android.app_base.utils;
+import android.app.Activity;
+import android.app.Application;
+import android.content.ComponentCallbacks;
import android.content.Context;
+import android.content.res.Configuration;
+import android.util.DisplayMetrics;
import androidx.annotation.DimenRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
+import com.android.app_base.base.BaseApplication;
/**
* @author Ljj
@@ -32,7 +41,7 @@
*/
public static int getDP(Context context,@DimenRes int dpSize){
float pxValue = context.getResources().getDimension(dpSize);//鑾峰彇瀵瑰簲璧勬簮鏂囦欢涓嬬殑sp鍊�
- //灏唒x鍊艰浆鎹㈡垚sp鍊�
+ //灏唒x鍊艰浆鎹㈡垚dp鍊�
return px2dip(context, pxValue);
}
@@ -44,6 +53,10 @@
return (int) dpValue;
}
final float scale = context.getResources().getDisplayMetrics().density;
+ return (int) (dpValue * scale + 0.5f);
+ }
+ public static int dip2px(float dpValue) {
+ final float scale = BaseApplication.getInstance().getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
@@ -71,4 +84,51 @@
final float scale = context.getResources().getDisplayMetrics().scaledDensity;
return (int) (pxValue / scale + 0.5f);
}
+ public static int getScreenWidth(Context context){
+ DisplayMetrics dm = context.getResources().getDisplayMetrics();
+ if(dm != null)return dm.widthPixels;
+ return 0;
+ }
+ public static int getScreenHeight(Context context){
+ DisplayMetrics dm = context.getResources().getDisplayMetrics();
+ if(dm != null)return dm.heightPixels;
+ return 0;
+ }
+
+ //浠婃棩澶存潯灞忓箷閫傞厤鏂规
+ private static float sNoncompatDensity;
+ private static float sNoncompatScaledDensity;
+ public static void setCustomDensity(@NonNull Activity activity, @NonNull final Application application){
+ final DisplayMetrics appDisplayMetrics = application.getResources().getDisplayMetrics();
+
+ if (sNoncompatDensity == 0){
+ sNoncompatDensity = appDisplayMetrics.density;
+ sNoncompatScaledDensity = appDisplayMetrics.scaledDensity;
+ application.registerComponentCallbacks(new ComponentCallbacks() {
+ @Override
+ public void onConfigurationChanged(@NonNull Configuration newConfig) {
+ if (newConfig != null && newConfig.fontScale > 0){
+ sNoncompatScaledDensity = application.getResources().getDisplayMetrics().scaledDensity;
+ }
+ }
+
+ @Override
+ public void onLowMemory() {
+
+ }
+ });
+ }
+ final float targetDensity = appDisplayMetrics.widthPixels / 360;
+ final float targetScaledDensity = targetDensity * (sNoncompatScaledDensity / sNoncompatDensity);
+ final int targetDensityDpi = (int) (160*targetDensity);
+
+ appDisplayMetrics.density = targetDensity;
+ appDisplayMetrics.scaledDensity = targetScaledDensity;
+ appDisplayMetrics.densityDpi = targetDensityDpi;
+
+ final DisplayMetrics activityDisplayMetrics = activity.getResources().getDisplayMetrics();
+ activityDisplayMetrics.density = targetDensity;
+ activityDisplayMetrics.scaledDensity = targetScaledDensity;
+ activityDisplayMetrics.densityDpi = targetDensityDpi;
+ }
}
--
Gitblit v1.9.1