ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

如何创建像youtube视频视图“在Android中的小屏幕和全屏播放”

2019-05-29 09:13:06  阅读:277  来源: 互联网

标签:android android-layout media-player android-video-player


我想开发像Youtube这样的活动或片段.

“当用户从列表中点击视频时,它开始在小视频视图中播放,如高度= 200dp和宽度= 300dp(例如),我想在MediaPlayer控制器上显示全屏按钮,用户可以在全屏播放相同的视频视频播放.

此外,我想显示相关的videoList和当前播放视频的评论所以我应该使用片段?如果是,任何示例示例.

我搜索谷歌关于这种类型的视频播放,但我没有找到它..有一些答案,如在高度和宽度使用填充父…但我不想直接显示全屏.

我希望以小尺寸和全屏显示视频.我怎样才能做到这一点
在图像中,您可以看到视频控制器中的全屏按钮,我想这样做.

任何帮助表示赞赏

谢谢

解决方法:

尝试创建小视频表面或视频视图,并可以通过显示矩阵更改视图参数

  DisplayMetrics displaymetrics = new DisplayMetrics();
  getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
  int height = displaymetrics.heightPixels;
  int width = displaymetrics.widthPixels;

  android.widget.FrameLayout.LayoutParams params = (android.widget.FrameLayout.LayoutParams) videoSurface.getLayoutParams();
  params.width = width;
  params.height=height-80;// -80 for android controls
  params.setMargins(0, 0, 0, 50);

因此,要执行此代码,您可以创建自己的自定义媒体控制器,也可以通过扩展媒体控制器来使用set anchor.

1)这是自定义媒体控制器链接
Custom media controller

2)扩展媒体控制器并设置锚标签
 set anchor tag

  public void setAnchorView(final View view) {
super.setAnchorView(view);

Button fullScreen = new Button(context);
fullScreen.setText("FullScreen");
Log.e("media controller","Set anchorView");
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.setMargins(view.getWidth(), 0, 5, 20);
params.gravity =  Gravity.RIGHT;
addView(fullScreen, params);

fullScreen.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        Log.e("media controller","full screen onclick");

        Intent i = new Intent("xyxyxyxhx");

        context.sendBroadcast(i);

    }
});
    }

标签:android,android-layout,media-player,android-video-player
来源: https://codeday.me/bug/20190529/1176793.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有