zoukankan      html  css  js  c++  java
  • Android 用视频做页面背景

    不知道怎么开头,直接代码。

    xml:RelativeLayout布局,MyVideoView放在第一位,其他的放到之下就可以。

    <MyVideoView
    android:id="@+id/videoView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:foregroundGravity="center"
    android:layout_alignParentBottom="true"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"/>
    MyVideoView:
    public class MyVideoView extends VideoView {
        public MyVideoView(Context context) {
            super(context);
        }
    
        public MyVideoView(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        public MyVideoView(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
        }
    
        @Override
        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
            //重新计算高度
            int width = getDefaultSize(0, widthMeasureSpec);
            int height = getDefaultSize(0, heightMeasureSpec);
            setMeasuredDimension(width, height);
        }
    
        @Override
        public void setOnPreparedListener(MediaPlayer.OnPreparedListener l) {
            super.setOnPreparedListener(l);
        }
    
        @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
            return super.onKeyDown(keyCode, event);
        }
    
    
    }

    Activity:

     private void setVideo() {
            //设置播放加载路径
            videoView.setVideoURI(Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.login));
            //播放
            videoView.start();
            //循环播放
            videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                @Override
                public void onCompletion(MediaPlayer mediaPlayer) {
                    videoView.start();
                }
            });
            //设置为静音
            videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mediaPlayer) {
                    mediaPlayer.setVolume(0f, 0f);
                }
            });
        }
    
        //返回重启加载
        @Override
        protected void onRestart() {
            setVideo();
            super.onRestart();
        }
    
        //防止锁屏或者切出的时候,音乐在播放
        @Override
        protected void onStop() {
            videoView.stopPlayback();
            super.onStop();
        }
    

      

  • 相关阅读:
    各种知识点
    链表
    滑动窗口
    数组

    【转】无重复字符的最长子串
    【转】荷兰国旗问题 三指针排序
    【转】回溯思想团灭排列、组合、子集问题
    【LeetCode】45. 跳跃游戏 II
    动态分配内存初始化二维数组
  • 原文地址:https://www.cnblogs.com/leshen/p/12855302.html
Copyright © 2011-2022 走看看