eoe 移动开发者论坛

 找回密码
 加入eoe

QQ登录

只需一步,快速开始

查看: 371|回复: 4
收起左侧

Android webview(二)

[复制链接]

签到天数: 8 天

连续签到: 1 天

[LV.3]偶尔看看II

16

主题

152

帖子

103

e币
发表于 2017-1-6 10:34:35 | 显示全部楼层 |阅读模式

没有eoe的账号,级别还太低,出门如何吹牛逼?

您需要 登录 才可以下载或查看,没有帐号?加入eoe

x
使用webview全屏播放视频,需要使用一个媒介来实现。1、在layout布局时,除了定义一个webview之外,还需要定义一个framelayout
  <FrameLayout
        android:id="@+id/video_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:visibility="gone"
        ></FrameLayout>
    <WebView
        android:id="@+id/webView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
2、在代码中通过自定义WebChromeClient中的onShowCustomView来实现全屏播放
private FrameLayout videoview;
private  WebView testWeb;
private View xCustomView;
private WebChromeClient.CustomViewCallback     xCustomViewCallback;

private void initView() {
    testWeb.setWebChromeClient(new MyVideoWebChromeClient());
}
class MyVideoWebChromeClient extends WebChromeClient {
                /**
                  *  显示全屏
                  *
               **/

                @Override
                public void onShowCustomView(View view, CustomViewCallback callback) {
                   testWeb.setVisibility(View.GONE);
                    //如果一个视图已经存在,那么立刻终止并新建一个
                    if (xCustomView != null) {
                        callback.onCustomViewHidden();
                        return;
                    }            
                    videoview.addView(view);
                    xCustomView = view;
                    xCustomViewCallback = callback;
                    videoview.setVisibility(View.VISIBLE);
                }


                /**
                  *  隐藏全屏
                  *
               **/
                  @Override
                public void onHideCustomView() {
                    if (xCustomView == null)return;          //不是全屏播放状态            
                    xCustomView.setVisibility(View.GONE);
                    videoview.removeView(xCustomView);
                    xCustomView = null;
                    videoview.setVisibility(View.GONE);
                    xCustomViewCallback.onCustomViewHidden();
                    testWeb.setVisibility(View.VISIBLE);
                }



}



签到天数: 3 天

连续签到: 2 天

[LV.2]偶尔看看I

1

主题

5

帖子

9

e币
发表于 2017-1-6 17:40:27 | 显示全部楼层
Android4.4 以后不会调用onShowCustomView();你怎么处理?

该用户从未签到

0

主题

3

帖子

14

e币
发表于 2017-1-8 22:34:16 | 显示全部楼层
东西不错,学习了

签到天数: 2 天

连续签到: 1 天

[LV.1]初来乍到

1

主题

14

帖子

44

e币
社区认证会员
发表于 2017-1-11 12:29:40 | 显示全部楼层
学习了,慢慢研究。

签到天数: 22 天

连续签到: 1 天

[LV.4]偶尔看看III

1

主题

94

帖子

596

e币
发表于 2017-2-13 13:56:32 | 显示全部楼层
感觉用处不是很大,试验了还是没用
*滑动验证:
您需要登录后才可以回帖 登录 | 加入eoe

本版积分规则

推荐阅读
赞助商们

QQ|联系我们|小黑屋|手机版|eoe 移动开发者论坛 ( 京ICP备11018032 京公网安11010802020210  

GMT+8, 2017-8-16 21:10 , Processed in 0.681879 second(s), 45 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表
关闭

扫一扫 关注eoe官方微信