Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
ac13
GSYVideoPlayer
提交
60f39ad2
G
GSYVideoPlayer
项目概览
ac13
/
GSYVideoPlayer
与 Fork 源项目一致
从无法访问的项目Fork
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
GSYVideoPlayer
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
60f39ad2
编写于
9月 03, 2019
作者:
G
guoshuyu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加 setNeedAutoAdaptation
上级
6527aea3
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
23 addition
and
5 deletion
+23
-5
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYBaseVideoPlayer.java
...m/shuyu/gsyvideoplayer/video/base/GSYBaseVideoPlayer.java
+23
-5
未找到文件。
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYBaseVideoPlayer.java
浏览文件 @
60f39ad2
...
...
@@ -68,6 +68,9 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
//是否根据视频尺寸,自动选择竖屏全屏或者横屏全屏,注意,这时候默认旋转无效
protected
boolean
mAutoFullWithSize
=
false
;
//是否需要竖屏全屏的时候判断状态栏
protected
boolean
isNeedAutoAdaptation
=
false
;
//全屏动画是否结束了
protected
boolean
mFullAnimEnd
=
true
;
...
...
@@ -952,6 +955,20 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
this
.
mAutoFullWithSize
=
autoFullWithSize
;
}
public
boolean
isNeedAutoAdaptation
()
{
return
isNeedAutoAdaptation
;
}
/**
* 是否需要适配在竖屏横屏时,由于刘海屏或者打孔屏占据空间,导致标题显示被遮盖的问题
*
* @param needAutoAdaptation 默认false
*/
public
void
setNeedAutoAdaptation
(
boolean
needAutoAdaptation
)
{
isNeedAutoAdaptation
=
needAutoAdaptation
;
}
/**
* 检测是否根据视频尺寸,自动选择竖屏全屏或者横屏全屏;
* 并且适配在竖屏横屏时,由于刘海屏或者打孔屏占据空间,导致标题显示被遮盖的问题
...
...
@@ -961,11 +978,12 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
protected
void
checkAutoFullWithSizeAndAdaptation
(
final
GSYBaseVideoPlayer
gsyVideoPlayer
)
{
if
(
gsyVideoPlayer
!=
null
)
{
//判断是否自动选择;判断是否是竖直的视频;判断是否隐藏状态栏
if
(
isAutoFullWithSize
()
&&
isVerticalVideo
()
&&
isFullHideStatusBar
())
{
if
(
isNeedAutoAdaptation
&&
isAutoFullWithSize
()
&&
isVerticalVideo
()
&&
isFullHideStatusBar
())
{
gsyVideoPlayer
.
postDelayed
(
new
Runnable
()
{
@Override
public
void
run
()
{
gsyVideoPlayer
.
autoAdaptation
();
gsyVideoPlayer
.
getCurrentPlayer
().
autoAdaptation
();
}
},
100
);
}
...
...
@@ -973,15 +991,15 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
}
/**
* 自动适配在竖屏全屏时,由于刘海屏或者打孔屏占据空间带来的影响(某些机型在全屏时会自动将布局下移(或者添加padding),例如三星S10、小米8;但是也有一些机型在全屏时不会处理,此时,就为了兼容这部分机型)
* 自动适配在竖屏全屏时,
* 由于刘海屏或者打孔屏占据空间带来的影响(某些机型在全屏时会自动将布局下移(或者添加padding),
* 例如三星S10、小米8;但是也有一些机型在全屏时不会处理,此时,就为了兼容这部分机型)
*/
protected
void
autoAdaptation
()
{
Context
context
=
getContext
();
if
(
isVerticalVideo
())
{
int
[]
location
=
new
int
[
2
];
getLocationOnScreen
(
location
);
/*同时判断系统是否有自动将布局从statusbar下方开始显示,根据在屏幕中的位置判断*/
//如果系统没有将布局下移,那么此时处理
if
(
location
[
1
]
==
0
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录