Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qq_26386469
GSYVideoPlayer
提交
33c4b382
G
GSYVideoPlayer
项目概览
qq_26386469
/
GSYVideoPlayer
与 Fork 源项目一致
从无法访问的项目Fork
通知
5
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,发现更多精彩内容 >>
提交
33c4b382
编写于
11月 21, 2016
作者:
S
shuyu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add small video
上级
bebf0c9d
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
316 addition
and
16 deletion
+316
-16
app/src/main/java/com/example/gsyvideoplayer/ListVideo2Activity.java
...n/java/com/example/gsyvideoplayer/ListVideo2Activity.java
+37
-0
app/src/main/java/com/example/gsyvideoplayer/adapter/ListVideoAdapter.java
.../com/example/gsyvideoplayer/adapter/ListVideoAdapter.java
+1
-1
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoPlayer.java
...rc/main/java/com/shuyu/gsyvideoplayer/GSYVideoPlayer.java
+23
-7
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/SmallVideoTouch.java
...c/main/java/com/shuyu/gsyvideoplayer/SmallVideoTouch.java
+74
-0
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/utils/CommonUtil.java
.../main/java/com/shuyu/gsyvideoplayer/utils/CommonUtil.java
+46
-0
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
...in/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
+43
-3
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/video/GSYBaseVideoPlayer.java
...va/com/shuyu/gsyvideoplayer/video/GSYBaseVideoPlayer.java
+90
-4
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/video/StandardGSYVideoPlayer.java
...om/shuyu/gsyvideoplayer/video/StandardGSYVideoPlayer.java
+2
-1
未找到文件。
app/src/main/java/com/example/gsyvideoplayer/ListVideo2Activity.java
浏览文件 @
33c4b382
package
com.example.gsyvideoplayer
;
import
android.graphics.Point
;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.support.v7.app.AppCompatActivity
;
import
android.transition.Explode
;
import
android.view.Window
;
import
android.widget.AbsListView
;
import
android.widget.FrameLayout
;
import
android.widget.ListView
;
import
android.widget.RelativeLayout
;
import
com.example.gsyvideoplayer.adapter.ListNormalAdapter
;
import
com.example.gsyvideoplayer.adapter.ListVideoAdapter
;
import
com.shuyu.gsyvideoplayer.GSYVideoManager
;
import
com.shuyu.gsyvideoplayer.GSYVideoPlayer
;
import
com.shuyu.gsyvideoplayer.utils.CommonUtil
;
import
com.shuyu.gsyvideoplayer.utils.ListVideoUtil
;
import
com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
;
...
...
@@ -48,6 +53,38 @@ public class ListVideo2Activity extends AppCompatActivity {
listVideoAdapter
.
setRootView
(
activityListVideo
);
videoList
.
setAdapter
(
listVideoAdapter
);
videoList
.
setOnScrollListener
(
new
AbsListView
.
OnScrollListener
()
{
@Override
public
void
onScrollStateChanged
(
AbsListView
view
,
int
scrollState
)
{
}
@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
();
}
}
}
}
});
}
...
...
app/src/main/java/com/example/gsyvideoplayer/adapter/ListVideoAdapter.java
浏览文件 @
33c4b382
...
...
@@ -34,7 +34,7 @@ import static com.example.gsyvideoplayer.utils.CommonUtil.setViewHeight;
public
class
ListVideoAdapter
extends
BaseAdapter
{
p
rivate
String
TAG
=
"TT
"
;
p
ublic
final
static
String
TAG
=
"TT2
"
;
private
List
<
VideoModel
>
list
=
new
ArrayList
<>();
private
LayoutInflater
inflater
=
null
;
...
...
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoPlayer.java
浏览文件 @
33c4b382
...
...
@@ -45,13 +45,13 @@ public abstract class GSYVideoPlayer extends GSYBaseVideoPlayer implements View.
public
static
final
String
TAG
=
"GSYVideoPlayer"
;
p
rotected
static
final
int
CURRENT_STATE_NORMAL
=
0
;
//正常
p
rotected
static
final
int
CURRENT_STATE_PREPAREING
=
1
;
//准备中
p
rotected
static
final
int
CURRENT_STATE_PLAYING
=
2
;
//播放中
p
rotected
static
final
int
CURRENT_STATE_PLAYING_BUFFERING_START
=
3
;
//开始缓冲
p
rotected
static
final
int
CURRENT_STATE_PAUSE
=
5
;
//暂停
p
rotected
static
final
int
CURRENT_STATE_AUTO_COMPLETE
=
6
;
//自动播放结束
p
rotected
static
final
int
CURRENT_STATE_ERROR
=
7
;
//错误状态
p
ublic
static
final
int
CURRENT_STATE_NORMAL
=
0
;
//正常
p
ublic
static
final
int
CURRENT_STATE_PREPAREING
=
1
;
//准备中
p
ublic
static
final
int
CURRENT_STATE_PLAYING
=
2
;
//播放中
p
ublic
static
final
int
CURRENT_STATE_PLAYING_BUFFERING_START
=
3
;
//开始缓冲
p
ublic
static
final
int
CURRENT_STATE_PAUSE
=
5
;
//暂停
p
ublic
static
final
int
CURRENT_STATE_AUTO_COMPLETE
=
6
;
//自动播放结束
p
ublic
static
final
int
CURRENT_STATE_ERROR
=
7
;
//错误状态
public
static
final
int
FULL_SCREEN_NORMAL_DELAY
=
2000
;
...
...
@@ -424,6 +424,18 @@ public abstract class GSYVideoPlayer extends GSYBaseVideoPlayer implements View.
mTextureViewContainer
.
addView
(
mTextureView
,
layoutParams
);
}
/**
* 小窗口
**/
@Override
protected
void
setSmallVideoTextureView
(
View
.
OnTouchListener
onTouchListener
)
{
mTextureView
.
setOnTouchListener
(
onTouchListener
);
mProgressBar
.
setOnTouchListener
(
null
);
mFullscreenButton
.
setOnTouchListener
(
null
);
mTextureView
.
setOnClickListener
(
null
);
}
/**
* 设置界面选择
*/
...
...
@@ -612,6 +624,10 @@ public abstract class GSYVideoPlayer extends GSYBaseVideoPlayer implements View.
}
protected
void
onClickUiToggle
()
{
}
@Override
public
void
onProgressChanged
(
SeekBar
seekBar
,
int
progress
,
boolean
fromUser
)
{
...
...
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/SmallVideoTouch.java
0 → 100644
浏览文件 @
33c4b382
package
com.shuyu.gsyvideoplayer
;
import
android.view.MotionEvent
;
import
android.view.View
;
import
android.widget.FrameLayout
;
import
com.shuyu.gsyvideoplayer.video.GSYBaseVideoPlayer
;
public
class
SmallVideoTouch
implements
View
.
OnTouchListener
{
private
int
mDownX
,
mDownY
;
private
int
mMarginLeft
,
mMarginTop
;
private
int
_xDelta
,
_yDelta
;
private
GSYBaseVideoPlayer
mGsyBaseVideoPlayer
;
public
SmallVideoTouch
(
GSYBaseVideoPlayer
gsyBaseVideoPlayer
,
int
marginLeft
,
int
marginTop
)
{
super
();
mMarginLeft
=
marginLeft
;
mMarginTop
=
marginTop
;
mGsyBaseVideoPlayer
=
gsyBaseVideoPlayer
;
}
@Override
public
boolean
onTouch
(
View
view
,
MotionEvent
event
)
{
final
int
X
=
(
int
)
event
.
getRawX
();
final
int
Y
=
(
int
)
event
.
getRawY
();
switch
(
event
.
getAction
()
&
MotionEvent
.
ACTION_MASK
)
{
case
MotionEvent
.
ACTION_DOWN
:
mDownX
=
X
;
mDownY
=
Y
;
FrameLayout
.
LayoutParams
lParams
=
(
FrameLayout
.
LayoutParams
)
mGsyBaseVideoPlayer
.
getLayoutParams
();
_xDelta
=
X
-
lParams
.
leftMargin
;
_yDelta
=
Y
-
lParams
.
topMargin
;
break
;
case
MotionEvent
.
ACTION_UP
:
if
(
Math
.
abs
(
mDownY
-
Y
)
<
5
&&
Math
.
abs
(
mDownX
-
X
)
<
5
)
{
return
false
;
}
else
{
return
true
;
}
case
MotionEvent
.
ACTION_MOVE
:
FrameLayout
.
LayoutParams
layoutParams
=
(
FrameLayout
.
LayoutParams
)
mGsyBaseVideoPlayer
.
getLayoutParams
();
layoutParams
.
leftMargin
=
X
-
_xDelta
;
layoutParams
.
topMargin
=
Y
-
_yDelta
;
if
(
layoutParams
.
leftMargin
>=
mMarginLeft
)
{
layoutParams
.
leftMargin
=
mMarginLeft
;
}
if
(
layoutParams
.
topMargin
>=
mMarginTop
)
{
layoutParams
.
topMargin
=
mMarginTop
;
}
if
(
layoutParams
.
leftMargin
<=
0
)
{
layoutParams
.
leftMargin
=
0
;
}
if
(
layoutParams
.
topMargin
<=
0
)
{
layoutParams
.
topMargin
=
0
;
}
mGsyBaseVideoPlayer
.
setLayoutParams
(
layoutParams
);
}
return
false
;
}
}
\ No newline at end of file
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/utils/CommonUtil.java
浏览文件 @
33c4b382
...
...
@@ -8,6 +8,7 @@ import android.net.NetworkInfo;
import
android.support.v7.app.ActionBar
;
import
android.support.v7.app.AppCompatActivity
;
import
android.support.v7.internal.view.ContextThemeWrapper
;
import
android.util.DisplayMetrics
;
import
android.util.TypedValue
;
import
android.view.WindowManager
;
...
...
@@ -138,4 +139,49 @@ public class CommonUtil {
}
return
null
;
}
/**
* dip转为PX
*/
public
static
int
dip2px
(
Context
context
,
float
dipValue
)
{
float
fontScale
=
context
.
getResources
().
getDisplayMetrics
().
density
;
return
(
int
)
(
dipValue
*
fontScale
+
0.5f
);
}
/**
* 根据手机的分辨率从 px 的单位 转成为 dp
*/
public
static
int
px2dip
(
Context
context
,
float
pxValue
)
{
final
float
scale
=
context
.
getResources
().
getDisplayMetrics
().
density
;
return
(
int
)
(
pxValue
/
scale
+
0.5f
);
}
/**
* 获取屏幕的宽度px
*
* @param context 上下文
* @return 屏幕宽px
*/
public
static
int
getScreenWidth
(
Context
context
)
{
WindowManager
windowManager
=
(
WindowManager
)
context
.
getSystemService
(
Context
.
WINDOW_SERVICE
);
DisplayMetrics
outMetrics
=
new
DisplayMetrics
();
// 创建了一张白纸
windowManager
.
getDefaultDisplay
().
getMetrics
(
outMetrics
);
// 给白纸设置宽高
return
outMetrics
.
widthPixels
;
}
/**
* 获取屏幕的高度px
*
* @param context 上下文
* @return 屏幕高px
*/
public
static
int
getScreenHeight
(
Context
context
)
{
WindowManager
windowManager
=
(
WindowManager
)
context
.
getSystemService
(
Context
.
WINDOW_SERVICE
);
DisplayMetrics
outMetrics
=
new
DisplayMetrics
();
// 创建了一张白纸
windowManager
.
getDefaultDisplay
().
getMetrics
(
outMetrics
);
// 给白纸设置宽高
return
outMetrics
.
heightPixels
;
}
}
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
浏览文件 @
33c4b382
...
...
@@ -3,6 +3,7 @@ package com.shuyu.gsyvideoplayer.utils;
import
android.app.Activity
;
import
android.content.Context
;
import
android.graphics.Color
;
import
android.graphics.Point
;
import
android.os.Build
;
import
android.os.Handler
;
import
android.transition.TransitionManager
;
...
...
@@ -32,16 +33,17 @@ public class ListVideoUtil {
private
ViewGroup
.
LayoutParams
listParams
;
private
OrientationUtils
orientationUtils
;
private
Context
context
;
private
int
playPosition
=
-
1
;
// 播放的位置
private
boolean
isFull
;
//当前是否全屏
private
boolean
isSmall
;
//当前是否小屏
private
boolean
autoRotation
=
true
;
//是否自动旋转
private
boolean
fullLandFrist
=
true
;
//是否全屏就马上横屏
private
boolean
hideStatusBar
;
//是否隐藏有状态bar
private
boolean
hideActionBar
;
//是否隐藏有状态ActionBar
protected
int
[]
listItemRect
;
//当前item框的屏幕位置
protected
int
[]
listItemSize
;
//当前item的大小
private
int
[]
listItemRect
;
//当前item框的屏幕位置
private
int
[]
listItemSize
;
//当前item的大小
private
Handler
handler
=
new
Handler
();
...
...
@@ -50,6 +52,8 @@ public class ListVideoUtil {
public
ListVideoUtil
(
Context
context
)
{
gsyVideoPlayer
=
new
StandardGSYVideoPlayer
(
context
);
this
.
context
=
context
;
int
smallVideoWidth
=
CommonUtil
.
getScreenWidth
(
context
)
/
2
-
CommonUtil
.
dip2px
(
context
,
20
);
int
smallVideoHeight
=
smallVideoWidth
*
3
/
4
;
}
/**
...
...
@@ -339,6 +343,30 @@ public class ListVideoUtil {
}
/**
* 显示小屏幕效果
*
* @param size 小视频的大小
* @param actionBar 是否有actionBar
* @param statusBar 是否有状态栏
*/
public
void
showSmallVideo
(
Point
size
,
final
boolean
actionBar
,
final
boolean
statusBar
)
{
if
(
gsyVideoPlayer
.
getCurrentState
()
==
GSYVideoPlayer
.
CURRENT_STATE_PLAYING
)
{
gsyVideoPlayer
.
showSmallVideo
(
size
,
actionBar
,
statusBar
);
isSmall
=
true
;
}
}
/**
* 恢复小屏幕效果
*/
public
void
smallVideoToNormal
()
{
isSmall
=
false
;
gsyVideoPlayer
.
hideSmallVideo
();
}
/**
* 设置全屏显示的viewGroup
*
...
...
@@ -420,4 +448,16 @@ public class ListVideoUtil {
public
void
setShowFullAnimation
(
boolean
showFullAnimation
)
{
this
.
showFullAnimation
=
showFullAnimation
;
}
public
int
getPlayPosition
()
{
return
playPosition
;
}
public
String
getPlayTAG
()
{
return
TAG
;
}
public
boolean
isSmall
()
{
return
isSmall
;
}
}
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/video/GSYBaseVideoPlayer.java
浏览文件 @
33c4b382
...
...
@@ -3,6 +3,7 @@ package com.shuyu.gsyvideoplayer.video;
import
android.app.Activity
;
import
android.content.Context
;
import
android.graphics.Color
;
import
android.graphics.Point
;
import
android.os.Build
;
import
android.os.Handler
;
import
android.transition.TransitionManager
;
...
...
@@ -18,6 +19,7 @@ import android.widget.ImageView;
import
com.shuyu.gsyvideoplayer.GSYVideoManager
;
import
com.shuyu.gsyvideoplayer.GSYVideoPlayer
;
import
com.shuyu.gsyvideoplayer.R
;
import
com.shuyu.gsyvideoplayer.SmallVideoTouch
;
import
com.shuyu.gsyvideoplayer.listener.GSYMediaPlayerListener
;
import
com.shuyu.gsyvideoplayer.utils.CommonUtil
;
import
com.shuyu.gsyvideoplayer.utils.OrientationUtils
;
...
...
@@ -36,7 +38,9 @@ import static com.shuyu.gsyvideoplayer.utils.CommonUtil.showSupportActionBar;
public
abstract
class
GSYBaseVideoPlayer
extends
FrameLayout
implements
GSYMediaPlayerListener
{
protected
static
final
int
FULLSCREEN_ID
=
83797
;
protected
static
final
int
FULLSCREEN_ID
=
85597
;
public
static
final
int
SMALL_ID
=
84778
;
protected
static
long
CLICK_QUIT_FULLSCREEN_TIME
=
0
;
...
...
@@ -91,8 +95,8 @@ public abstract class GSYBaseVideoPlayer extends FrameLayout implements GSYMedia
/**
* 移除没用的
*/
private
void
removeVideo
(
ViewGroup
vp
)
{
View
old
=
vp
.
findViewById
(
FULLSCREEN_ID
);
private
void
removeVideo
(
ViewGroup
vp
,
int
id
)
{
View
old
=
vp
.
findViewById
(
id
);
if
(
old
!=
null
)
{
if
(
old
.
getParent
()
!=
null
)
{
ViewGroup
viewGroup
=
(
ViewGroup
)
old
.
getParent
();
...
...
@@ -173,7 +177,7 @@ public abstract class GSYBaseVideoPlayer extends FrameLayout implements GSYMedia
final
ViewGroup
vp
=
getViewGroup
();
removeVideo
(
vp
);
removeVideo
(
vp
,
FULLSCREEN_ID
);
if
(
mTextureViewContainer
.
getChildCount
()
>
0
)
{
mTextureViewContainer
.
removeAllViews
();
...
...
@@ -293,6 +297,81 @@ public abstract class GSYBaseVideoPlayer extends FrameLayout implements GSYMedia
}
}
/**
* 显示小窗口
*/
public
void
showSmallVideo
(
Point
size
,
final
boolean
actionBar
,
final
boolean
statusBar
)
{
final
ViewGroup
vp
=
getViewGroup
();
removeVideo
(
vp
,
SMALL_ID
);
if
(
mTextureViewContainer
.
getChildCount
()
>
0
)
{
mTextureViewContainer
.
removeAllViews
();
}
try
{
Constructor
<
GSYBaseVideoPlayer
>
constructor
=
(
Constructor
<
GSYBaseVideoPlayer
>)
GSYBaseVideoPlayer
.
this
.
getClass
().
getConstructor
(
Context
.
class
);
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
);
FrameLayout
.
LayoutParams
lp
=
new
FrameLayout
.
LayoutParams
(
size
.
x
,
size
.
y
);
int
marginLeft
=
CommonUtil
.
getScreenWidth
(
mContext
)
-
size
.
x
;
int
marginTop
=
CommonUtil
.
getScreenHeight
(
mContext
)
-
size
.
y
;
if
(
actionBar
)
{
marginTop
=
marginTop
-
getActionBarHeight
((
Activity
)
mContext
);
}
if
(
statusBar
)
{
marginTop
=
marginTop
-
getStatusBarHeight
(
mContext
);
}
lp
.
setMargins
(
marginLeft
,
marginTop
,
0
,
0
);
frameLayout
.
addView
(
gsyVideoPlayer
,
lp
);
vp
.
addView
(
frameLayout
,
lpParent
);
gsyVideoPlayer
.
setUp
(
mUrl
,
mCache
,
mObjects
);
gsyVideoPlayer
.
setStateAndUi
(
mCurrentState
);
gsyVideoPlayer
.
addTextureView
();
gsyVideoPlayer
.
onClickUiToggle
();
gsyVideoPlayer
.
setSmallVideoTextureView
(
new
SmallVideoTouch
(
gsyVideoPlayer
,
marginLeft
,
marginTop
));
GSYVideoManager
.
instance
().
setLastListener
(
this
);
GSYVideoManager
.
instance
().
setListener
(
gsyVideoPlayer
);
}
catch
(
InstantiationException
e
)
{
e
.
printStackTrace
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
/**
* 隐藏小窗口
*/
public
void
hideSmallVideo
()
{
final
ViewGroup
vp
=
getViewGroup
();
GSYVideoPlayer
gsyVideoPlayer
=
(
GSYVideoPlayer
)
vp
.
findViewById
(
SMALL_ID
);
removeVideo
(
vp
,
SMALL_ID
);
mCurrentState
=
GSYVideoManager
.
instance
().
getLastState
();
if
(
gsyVideoPlayer
!=
null
)
{
mCurrentState
=
gsyVideoPlayer
.
getCurrentState
();
}
GSYVideoManager
.
instance
().
setListener
(
GSYVideoManager
.
instance
().
lastListener
());
GSYVideoManager
.
instance
().
setLastListener
(
null
);
setStateAndUi
(
mCurrentState
);
addTextureView
();
CLICK_QUIT_FULLSCREEN_TIME
=
System
.
currentTimeMillis
();
}
/**
* 设置播放URL
...
...
@@ -328,6 +407,13 @@ public abstract class GSYBaseVideoPlayer extends FrameLayout implements GSYMedia
*/
protected
abstract
void
addTextureView
();
/**
* 小窗口
**/
protected
abstract
void
setSmallVideoTextureView
(
View
.
OnTouchListener
onTouchListener
);
protected
abstract
void
onClickUiToggle
();
/**
* 获取全屏按键
*/
...
...
gsyVideoPlayer/src/main/java/com/shuyu/gsyvideoplayer/video/StandardGSYVideoPlayer.java
浏览文件 @
33c4b382
...
...
@@ -256,7 +256,8 @@ public class StandardGSYVideoPlayer extends GSYVideoPlayer {
startDismissControlViewTimer
();
}
private
void
onClickUiToggle
()
{
@Override
protected
void
onClickUiToggle
()
{
if
(
mCurrentState
==
CURRENT_STATE_PREPAREING
)
{
if
(
mBottomContainer
.
getVisibility
()
==
View
.
VISIBLE
)
{
changeUiToPrepareingClear
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录