首页 > 其他分享 >多媒体——视频——利用视频视图VideoView播放视频

多媒体——视频——利用视频视图VideoView播放视频

时间:2022-10-15 15:33:30浏览次数:46  
标签:视频 视图 content Intent vv intent VideoView

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

========================================================================================================================

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
        android:id="@+id/btn_choose"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="打开相册播放视频"
        android:textColor="@color/black"
        android:textSize="17sp" />

    <VideoView
        android:id="@+id/vv_content"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
</LinearLayout>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

主代码:

package com.example.myapplication;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.MediaController;
import android.widget.VideoView;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity implements View.OnClickListener
{

    private final static String TAG = "VideoPlayActivity";
    private VideoView vv_content; // 声明一个视频视图对象
    private int CHOOSE_CODE = 3; // 只在视频库挑选图片的请求码

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 从布局文件中获取名叫vv_content的视频视图
        vv_content = findViewById(R.id.vv_content);
        findViewById(R.id.btn_choose).setOnClickListener(this);
    }

    @Override
    public void onClick(View v)
    {
        if (v.getId() == R.id.btn_choose)
        {
            // 创建一个内容获取动作的意图(准备跳到系统视频库)
            // ACTION_GET_CONTENT只可选择近期的视频
            //Intent intent = new Intent(Intent.ACTION_GET_CONTENT);

            // ACTION_PICK可选择所有视频
            Intent intent = new Intent(Intent.ACTION_PICK);
            intent.setType("video/*"); // 类型为视频
            startActivityForResult(intent, CHOOSE_CODE); // 打开系统视频库
        }
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent intent)
    {
        super.onActivityResult(requestCode, resultCode, intent);

        if (resultCode == RESULT_OK && requestCode == CHOOSE_CODE)
        {
            if (intent.getData() != null)    // 从视频库回来
            {
                vv_content.setVideoURI(intent.getData());   // 设置视频视图的视频路径
                MediaController mc = new MediaController(this);   // 创建一个媒体控制条
                vv_content.setMediaController(mc);   // 给视频视图设置相关联的媒体控制条
                mc.setMediaPlayer(vv_content);   // 给媒体控制条设置相关联的视频视图
                vv_content.start();   // 视频视图开始播放
            }
        }
    }

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

标签:视频,视图,content,Intent,vv,intent,VideoView
From: https://www.cnblogs.com/xiaobaibailongma/p/16794287.html

相关文章

  • 多媒体——视频——使用摄像机录制视频
       通过系统自带的摄像机可以很方便地录制视频,只要指定摄像动作为MediaStore.ACTION_VIDEO_CAPTURE即可。当然,需要事先设定下列的录像参数:1、MediaStore.EXTRA_VI......
  • DEMO:表维护视图相关维护及调用
    新建一个数据库表设置成可维护这里可以se11创建表维护视图也可以直接在刚才的界面点新建即可。另外,表字段里有时间和日期。想在创建和修改行项目的时候,日期和时间字段自动填......
  • 数据库第十次作业-视图【带源码】
    目录​​1.创建视图“view_info”,查询所有员工姓名、员工联系电话、车间地址、车间主任姓名、主任联系方式​​​​2.查看“view_info”视图字段信息​​​​3.创建视图“v......
  • 第八周 项目5:创建与使用视图
    目录​​一、课堂内容​​​​1.创建视图​​​​2.使用视图​​​​3.删除视图​​​​4.查看视图字段信息​​​​5.查看视图创建信息​​​​6.修改视图​​​​7.创建或......
  • 数据库第十一次作业-视图的应用【带源码】
    目录​​1.创建表​​​​2.添加数据​​​​3.查看数据​​​​4.创建视图​​ 1.创建表createtablestu(   ->s_idint(11)notnulluniqueprimarykey,   -......
  • Msql第三天,视图
                            视 图3.1视图概述视图(View)是一种虚拟存在的表。视图并不在数据库中实际存在,行和列数据来自......
  • linux调整音频使其与视频一致
    分离出音频参考:​​http://blog.sina.com.cn/s/blog_a4b0ad3801013uhy.html​​mencoder-ohistory.mp3-ovcframeno-oacmp3lame-ofrawaudiohistory.mp4这样就把mp4......
  • 视频直播系统源码,使用css修改input的文字提示语颜色
    视频直播系统源码,使用css修改input的文字提示语颜色 <style> /*Safari,ChromeWebKitbrowsers*/ input::-webkit-input-placeholder{color:#ccc;}/*火狐Mozilla......
  • uniapp-vue3-ts实现 微信小程序-视频上下滑动
    公司需求,后端被迫学习...临时记录一下后续完善暂时不会组件式开发,只能采用选项式了<template><viewstyle="color:white;"><viewclass="swiper">......
  • CVPR2022 | BasicVSR++ 这视频超分效果太顶啦!
    大家好,我是阿潘~前段时间商汤&南洋理工大学的视频超分算法获得比赛冠军算法,并入选CVPR2022!它的名字叫做BasicVSR++,是对视频超分SOTA模型BasicVSR的进一步改进。具体链接参......