Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
mmm-rain
AndroidUtilCode
提交
66a4c048
A
AndroidUtilCode
项目概览
mmm-rain
/
AndroidUtilCode
与 Fork 源项目一致
从无法访问的项目Fork
通知
4
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
AndroidUtilCode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
66a4c048
编写于
2月 22, 2021
作者:
B
Blankj
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
see 02/22 log
上级
e36f7d1f
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
50 addition
and
28 deletion
+50
-28
lib/subutil/src/main/java/com/blankj/subutil/util/CoordinateUtils.java
...rc/main/java/com/blankj/subutil/util/CoordinateUtils.java
+28
-0
lib/utilcode/src/main/java/com/blankj/utilcode/util/IntentUtils.java
...e/src/main/java/com/blankj/utilcode/util/IntentUtils.java
+2
-2
lib/utilcode/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
...e/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
+20
-26
未找到文件。
lib/subutil/src/main/java/com/blankj/subutil/util/CoordinateUtils.java
浏览文件 @
66a4c048
...
...
@@ -121,6 +121,34 @@ public final class CoordinateUtils {
return
gcj02ToBd09
(
gcj
[
0
],
gcj
[
1
]);
}
/**
* Mercator 坐标转 WGS84 坐标
*
* @param lng Mercator 坐标经度
* @param lat Mercator 坐标纬度
* @return WGS84 坐标:[经度,纬度]
*/
public
static
double
[]
mercatorToWGS84
(
double
lng
,
double
lat
)
{
double
x
=
lng
/
20037508.34d
*
180
.;
double
y
=
lat
/
20037508.34d
*
180
.;
y
=
180
/
PI
*
(
2
*
Math
.
atan
(
Math
.
exp
(
y
*
PI
/
180.0
))
-
PI
/
2
);
return
new
double
[]{
x
,
y
};
}
/**
* WGS84 坐标转 Mercator 坐标
*
* @param lng WGS84 坐标经度
* @param lat WGS84 坐标纬度
* @return Mercator 坐标:[经度,纬度]
*/
public
static
double
[]
wgs84ToMercator
(
double
lng
,
double
lat
)
{
double
x
=
lng
*
20037508.34
D
/
180.0
;
double
y
=
Math
.
log
(
Math
.
tan
((
90.0
+
lat
)
*
PI
/
360.0
))
/
(
PI
/
180
.);
y
=
y
*
20037508.34
D
/
180.0
;
return
new
double
[]{
x
,
y
};
}
private
static
double
transformLat
(
double
lng
,
double
lat
)
{
double
ret
=
-
100.0
+
2.0
*
lng
+
3.0
*
lat
+
0.2
*
lat
*
lat
+
0.1
*
lng
*
lat
+
0.2
*
Math
.
sqrt
(
Math
.
abs
(
lng
));
ret
+=
(
20.0
*
Math
.
sin
(
6.0
*
lng
*
PI
)
+
20.0
*
Math
.
sin
(
2.0
*
lng
*
PI
))
*
2.0
/
3.0
;
...
...
lib/utilcode/src/main/java/com/blankj/utilcode/util/IntentUtils.java
浏览文件 @
66a4c048
...
...
@@ -389,9 +389,9 @@ public final class IntentUtils {
public
static
Intent
getShutdownIntent
()
{
Intent
intent
;
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
O
)
{
intent
=
new
Intent
(
Intent
.
ACTION_SHUTDOWN
);
}
else
{
intent
=
new
Intent
(
"com.android.internal.intent.action.REQUEST_SHUTDOWN"
);
}
else
{
intent
=
new
Intent
(
"android.intent.action.ACTION_REQUEST_SHUTDOWN"
);
}
intent
.
putExtra
(
"android.intent.extra.KEY_CONFIRM"
,
false
);
return
intent
.
addFlags
(
Intent
.
FLAG_ACTIVITY_NEW_TASK
);
...
...
lib/utilcode/src/main/java/com/blankj/utilcode/util/ScreenUtils.java
浏览文件 @
66a4c048
...
...
@@ -112,39 +112,34 @@ public final class ScreenUtils {
public
static
int
getScreenDensityDpi
()
{
return
Resources
.
getSystem
().
getDisplayMetrics
().
densityDpi
;
}
/**
* Return
X (width) of the screen expressed as dots-per-inch
.
* Return
the exact physical pixels per inch of the screen in the Y dimension
.
*
* @return the
width of screen density expressed as dots-per-inch
* @return the
exact physical pixels per inch of the screen in the Y dimension
*/
public
static
in
t
getScreenXDpi
()
{
public
static
floa
t
getScreenXDpi
()
{
return
Resources
.
getSystem
().
getDisplayMetrics
().
xdpi
;
}
/**
* Return
Y (height) of the screen expressed as dots-per-inch
.
* Return
the exact physical pixels per inch of the screen in the Y dimension
.
*
* @return the
height of screen density expressed as dots-per-inch
* @return the
exact physical pixels per inch of the screen in the Y dimension
*/
public
static
in
t
getScreenYDpi
()
{
public
static
floa
t
getScreenYDpi
()
{
return
Resources
.
getSystem
().
getDisplayMetrics
().
ydpi
;
}
/**
* Return the distance between the given View's X (start point of View's width) and the screen width.
*
* @return the distance between the given View's X (start point of View's width) and the screen width.
*/
public
floa
t
calculateDistanceByX
(
View
view
)
{
int
[]
point
=
new
int
[
0
];
public
in
t
calculateDistanceByX
(
View
view
)
{
int
[]
point
=
new
int
[
2
];
view
.
getLocationOnScreen
(
point
);
return
(
getScreenWidth
()
-
point
[
0
]).
toFloat
()
;
return
getScreenWidth
()
-
point
[
0
]
;
}
/**
...
...
@@ -152,10 +147,10 @@ public final class ScreenUtils {
*
* @return the distance between the given View's Y (start point of View's height) and the screen height.
*/
public
floa
t
calculateDistanceByY
(
View
view
)
{
int
[]
point
=
new
int
[
0
];
public
in
t
calculateDistanceByY
(
View
view
)
{
int
[]
point
=
new
int
[
2
];
view
.
getLocationOnScreen
(
point
);
return
(
getScreenHeight
()
-
point
[
1
]).
toFloat
()
;
return
getScreenHeight
()
-
point
[
1
]
;
}
/**
...
...
@@ -163,23 +158,22 @@ public final class ScreenUtils {
*
* @return X coordinate of the given View on the screen.
*/
public
int
getViewX
(
View
view
){
int
[]
point
=
new
int
[
0
];
public
int
getViewX
(
View
view
)
{
int
[]
point
=
new
int
[
2
];
view
.
getLocationOnScreen
(
point
);
return
point
[
0
];
}
/**
* Return the Y coordinate of the given View on the screen.
*
* @return Y coordinate of the given View on the screen.
*/
public
int
getViewY
(
View
view
){
int
[]
point
=
new
int
[
0
];
public
int
getViewY
(
View
view
)
{
int
[]
point
=
new
int
[
2
];
view
.
getLocationOnScreen
(
point
);
return
point
[
1
];
}
/**
* Set full screen.
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录