Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
沁852
GSYVideoPlayer
提交
6533c9dc
G
GSYVideoPlayer
项目概览
沁852
/
GSYVideoPlayer
与 Fork 源项目一致
从无法访问的项目Fork
通知
9
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 搜索 >>
提交
6533c9dc
编写于
11月 21, 2016
作者:
S
shuyu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1.1.7
上级
33c4b382
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
67 addition
and
98 deletion
+67
-98
05.gif
05.gif
+0
-0
README.md
README.md
+30
-3
gradle.properties
gradle.properties
+1
-1
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoPlayer.java
...rc/main/java/com/shuyu/gsyvideoplayer/GSYVideoPlayer.java
+17
-0
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
...in/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
+5
-0
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/video/GSYBaseVideoPlayer.java
...va/com/shuyu/gsyvideoplayer/video/GSYBaseVideoPlayer.java
+2
-2
gsyVideoPlayer/src/main/res/drawable-xxhdpi/video_small_close.png
...Player/src/main/res/drawable-xxhdpi/video_small_close.png
+0
-0
gsyVideoPlayer/src/main/res/layout/video_layout_base.xml
gsyVideoPlayer/src/main/res/layout/video_layout_base.xml
+0
-92
gsyVideoPlayer/src/main/res/layout/video_layout_standard.xml
gsyVideoPlayer/src/main/res/layout/video_layout_standard.xml
+12
-0
未找到文件。
05.gif
0 → 100644
浏览文件 @
6533c9dc
3.9 MB
README.md
浏览文件 @
6533c9dc
...
...
@@ -9,6 +9,7 @@
*
<h4>
直接添加控件为封面
</h4>
*
<h4>
兼容一些5.0的过场效果
</h4>
*
<h4>
列表的全屏效果优化
</h4>
*
<h4>
列表的小窗口播放,可拖动
</h4>
## [简书详解入口](http://www.jianshu.com/p/9fe377dd9750)
...
...
@@ -16,13 +17,13 @@
<dependency>
<groupId>com.shuyu</groupId>
<artifactId>gsyVideoPlayer</artifactId>
<version>1.1.
6
</version>
<version>1.1.
7
</version>
<type>pom</type>
</dependency>
```
```
compile 'com.shuyu:gsyVideoPlayer:1.1.
6
'
compile 'com.shuyu:gsyVideoPlayer:1.1.
7
'
```
## 效果,录屏下的屏幕旋转和实际有些出入
...
...
@@ -37,11 +38,37 @@ compile 'com.shuyu:gsyVideoPlayer:1.1.6'
*
<h4>
2、列表
</h4>
<img
src=
"https://github.com/CarGuo/GSYVideoPlayer/blob/master/02.gif"
width=
"240px"
height=
"426px"
/>
<img
src=
"https://github.com/CarGuo/GSYVideoPlayer/blob/master/0
3
.gif"
width=
"240px"
height=
"426px"
/>
<img
src=
"https://github.com/CarGuo/GSYVideoPlayer/blob/master/0
4
.gif"
width=
"240px"
height=
"426px"
/>
*
<h4>
3、详情模式
</h4>
<img
src=
"https://github.com/CarGuo/GSYVideoPlayer/blob/master/04.gif"
width=
"240px"
height=
"426px"
/>
## 1.1.7 增加了第二种列表 ListVideoUtil可拖动小窗口支持
```
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
int lastVisibleItem = firstVisibleItem + visibleItemCount;
//大于0说明有播放,//对应的播放列表TAG
if (listVideoUtil.getPlayPosition() >= 0 && listVideoUtil.getPlayTAG().equals(ListVideoAdapter.TAG)) {
//当前播放的位置
int position = listVideoUtil.getPlayPosition();
//不可视的是时候
if ((position < firstVisibleItem || position > lastVisibleItem)) {
//如果是小窗口就不需要处理
if (!listVideoUtil.isSmall()) {
//小窗口
int size = CommonUtil.dip2px(ListVideo2Activity.this, 150);
listVideoUtil.showSmallVideo(new Point(size, size), false, true);
}
} else {
if (listVideoUtil.isSmall()) {
listVideoUtil.smallVideoToNormal();
}
}
}
}
```
## 1.1.6 优化了第二种列表ListVideoUtil的全屏效果,和列表一的全屏效果一致,两种全屏效果增加是否打开关闭接口。
...
...
gradle.properties
浏览文件 @
6533c9dc
...
...
@@ -18,7 +18,7 @@ org.gradle.jvmargs=-Xmx1536m
BINTRAY_USER
=
BINTRAY_KEY
=
PROJ_GROUP
=
com.shuyu
PROJ_VERSION
=
1.1.
6
PROJ_VERSION
=
1.1.
7
PROJ_NAME
=
gsyVideo
PROJ_WEBSITEURL
=
hhttps://github.com/CarGuo/GSYVideoPlayer
PROJ_ISSUETRACKERURL
=
...
...
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoPlayer.java
浏览文件 @
6533c9dc
...
...
@@ -152,6 +152,7 @@ public abstract class GSYVideoPlayer extends GSYBaseVideoPlayer implements View.
this
.
mContext
=
context
;
View
.
inflate
(
context
,
getLayoutId
(),
this
);
mStartButton
=
findViewById
(
R
.
id
.
start
);
mSmallClose
=
findViewById
(
R
.
id
.
small_close
);
mBackButton
=
(
ImageView
)
findViewById
(
R
.
id
.
back
);
mFullscreenButton
=
(
ImageView
)
findViewById
(
R
.
id
.
fullscreen
);
mProgressBar
=
(
SeekBar
)
findViewById
(
R
.
id
.
progress
);
...
...
@@ -433,9 +434,25 @@ public abstract class GSYVideoPlayer extends GSYBaseVideoPlayer implements View.
mProgressBar
.
setOnTouchListener
(
null
);
mFullscreenButton
.
setOnTouchListener
(
null
);
mTextureView
.
setOnClickListener
(
null
);
mSmallClose
.
setVisibility
(
VISIBLE
);
mSmallClose
.
setOnClickListener
(
new
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
hideSmallVideo
();
releaseAllVideos
();
}
});
}
public
void
setSmallCloseShow
()
{
mSmallClose
.
setVisibility
(
VISIBLE
);
}
public
void
setSmallCloseHide
()
{
mSmallClose
.
setVisibility
(
GONE
);
}
/**
* 设置界面选择
*/
...
...
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
浏览文件 @
6533c9dc
...
...
@@ -100,6 +100,11 @@ public class ListVideoUtil {
* @param url 播放的URL
*/
public
void
startPlay
(
String
url
)
{
if
(
isSmall
())
{
smallVideoToNormal
();
}
gsyVideoPlayer
.
release
();
gsyVideoPlayer
.
setUp
(
url
,
true
,
""
);
...
...
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/video/GSYBaseVideoPlayer.java
浏览文件 @
6533c9dc
...
...
@@ -74,6 +74,8 @@ public abstract class GSYBaseVideoPlayer extends FrameLayout implements GSYMedia
private
Handler
mHandler
=
new
Handler
();
protected
View
mSmallClose
;
public
GSYBaseVideoPlayer
(
Context
context
)
{
super
(
context
);
...
...
@@ -315,8 +317,6 @@ public abstract class GSYBaseVideoPlayer extends FrameLayout implements GSYMedia
GSYBaseVideoPlayer
gsyVideoPlayer
=
constructor
.
newInstance
(
getContext
());
gsyVideoPlayer
.
setId
(
SMALL_ID
);
//int size = CommonUtil.
FrameLayout
.
LayoutParams
lpParent
=
new
FrameLayout
.
LayoutParams
(
ViewGroup
.
LayoutParams
.
MATCH_PARENT
,
ViewGroup
.
LayoutParams
.
MATCH_PARENT
);
FrameLayout
frameLayout
=
new
FrameLayout
(
mContext
);
...
...
gsyVideoPlayer/src/main/res/drawable-xxhdpi/video_small_close.png
0 → 100644
浏览文件 @
6533c9dc
531 字节
gsyVideoPlayer/src/main/res/layout/video_layout_base.xml
已删除
100644 → 0
浏览文件 @
33c4b382
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@android:color/black"
>
<RelativeLayout
android:id=
"@+id/surface_container"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:gravity=
"center"
>
</RelativeLayout>
<LinearLayout
android:id=
"@+id/layout_bottom"
android:layout_width=
"match_parent"
android:layout_height=
"40dp"
android:layout_alignParentBottom=
"true"
android:background=
"#99000000"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/current"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"16dp"
android:text=
"00:00"
android:textColor=
"#ffffff"
/>
<SeekBar
android:id=
"@+id/progress"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_weight=
"1.0"
android:background=
"@null"
android:max=
"100"
android:maxHeight=
"4dp"
android:minHeight=
"4dp"
android:paddingBottom=
"8dp"
android:paddingTop=
"8dp"
android:progressDrawable=
"@drawable/video_seek_progress"
android:thumb=
"@drawable/video_seek_thumb"
/>
<TextView
android:id=
"@+id/total"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"16dp"
android:text=
"00:00"
android:textColor=
"#ffffff"
/>
<ImageView
android:id=
"@+id/fullscreen"
android:layout_width=
"wrap_content"
android:layout_height=
"fill_parent"
android:paddingRight=
"16dp"
android:scaleType=
"center"
android:src=
"@drawable/video_enlarge"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/layout_top"
android:layout_width=
"match_parent"
android:layout_height=
"48dp"
android:background=
"@drawable/video_title_bg"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
</LinearLayout>
<ProgressBar
android:id=
"@+id/loading"
android:layout_width=
"28dp"
android:layout_height=
"28dp"
android:layout_centerHorizontal=
"true"
android:layout_centerVertical=
"true"
android:indeterminateDrawable=
"@drawable/video_loading"
android:visibility=
"invisible"
/>
<ImageView
android:id=
"@+id/start"
android:layout_width=
"60dp"
android:layout_height=
"60dp"
android:layout_centerHorizontal=
"true"
android:layout_centerVertical=
"true"
android:layout_gravity=
"center_vertical"
android:src=
"@drawable/video_click_play_selector"
/>
</RelativeLayout>
gsyVideoPlayer/src/main/res/layout/video_layout_standard.xml
浏览文件 @
6533c9dc
...
...
@@ -144,4 +144,16 @@
android:layout_centerVertical=
"true"
android:layout_gravity=
"center_vertical"
/>
<ImageView
android:id=
"@+id/small_close"
android:layout_width=
"30dp"
android:layout_height=
"30dp"
android:paddingLeft=
"10dp"
android:paddingTop=
"10dp"
android:scaleType=
"centerInside"
android:src=
"@drawable/video_small_close"
android:visibility=
"gone"
/>
</RelativeLayout>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录