Blankj / Blankj/AndroidUtilCode
SizeUtils 中尺寸转换 因为使用的是以系统的像素密度来转换, 在像素密度适配方式中存在冲突
- Dominant language
- Java
- Stars
- 33.6k
- Forks
- 10.6k
- PR merge metrics
- No merged PRs in 30d
Description
- AndroidUtilCode 的版本:1.31.1
- 出现 Bug 的设备型号:所有型号
- 设备的 Android 版本:所有版本
## 描述 Bug
SizeUtils中 因为尺寸转换是以系统的像素密度来处理的
Resources.getSystem().getDisplayMetrics().density;
在那些通过修改activity像素密度来适配的应用里, 转换会产生严重误差
context.getResources().getDisplayMetrics().density;
是否可以增加一个通过上下文来转换尺寸的方法
如下
## 相关代码
```java
public static int dp2px(final float dpValue) {
final float scale = Resources.getSystem().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
```
```java
public static int dp2px(Context context, float dipValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dipValue * scale + 0.5f);
}
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.