前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Android从零单排系列十八】《Android视图控件——VideoView》

【Android从零单排系列十八】《Android视图控件——VideoView》

作者头像
再见孙悟空_
发布2023-07-17 20:26:34
2890
发布2023-07-17 20:26:34
举报

前言

小伙伴们,在上文中我们介绍了Android视图组件WebView,本文我们继续盘点,介绍一下视图控件的VideoView。

一 VideoView基本介绍

videoView是Android平台上用于播放视频的控件,它提供了一些常见属性和方法来控制视频的播放。

二 VideoView使用方法

在布局文件中添加VideoView:

代码语言:javascript
复制
<VideoView
    android:id="@+id/videoview"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

在Java代码中使用VideoView加载和播放视频:

代码语言:javascript
复制
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private VideoView videoView;

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

        // 获取VideoView实例
        videoView = findViewById(R.id.videoview);

        // 设置视频路径(可以是本地路径或网络URL)
        String videoPath = "https://www.example.com/video.mp4";
        Uri uri = Uri.parse(videoPath);
        videoView.setVideoURI(uri);

        // 创建媒体控制器(MediaController)
        MediaController mediaController = new MediaController(this);
        mediaController.setAnchorView(videoView);

        // 关联媒体控制器
        videoView.setMediaController(mediaController);

        // 开始播放视频
        videoView.start();
    }
}

注意:在使用VideoView时要确保已获取相关权限(如网络访问权限),并在AndroidManifest.xml文件中进行相应的声明。

三 VideoView常见属性及方法

属性:

  1. android:videoPath:指定要播放的本地视频文件路径。
  2. android:videoURI:指定要播放的视频的URI(可以是本地路径或网络URL)。
  3. android:mediaController:指定关联的媒体控制器。

方法:

  1. setVideoPath(String path):设置要播放的本地视频文件路径。
  2. setVideoURI(Uri uri):设置要播放的视频的URI(可以是本地路径或网络URL)。
  3. start():开始播放视频。
  4. pause():暂停播放视频。
  5. resume():继续播放视频(从暂停状态恢复)。
  6. stopPlayback():停止视频播放。
  7. seekTo(int msec):将视频跳转到指定的位置(以毫秒为单位)。
  8. isPlaying():检查当前是否正在播放视频。
  9. getDuration():获取视频的总时长。
  10. getCurrentPosition():获取当前视频播放的位置。
  11. setMediaController(MediaController controller):设置关联的媒体控制器。

四 VideoView简单Demo

准备视频文件: 在项目的res目录下创建raw文件夹,并将要播放的视频文件(例如video.mp4)放入该文件夹中。

在布局文件中添加VideoView:

代码语言:javascript
复制
<VideoView
    android:id="@+id/videoView"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

在Java代码中加载和播放视频:

代码语言:javascript
复制
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private VideoView videoView;

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

        videoView = findViewById(R.id.videoView);
        String videoPath = "android.resource://" + getPackageName() + "/raw/video";
        Uri uri = Uri.parse(videoPath);
        videoView.setVideoURI(uri);

        MediaController mediaController = new MediaController(this);
        mediaController.setAnchorView(videoView);
        videoView.setMediaController(mediaController);

        videoView.start();
    }
}

五 总结

通过VideoView,你可以加载本地视频或通过网络URL播放视频。同时,你还可以创建媒体控制器(MediaController)来提供基本的视频播放控制,例如播放、暂停、快进和快退等。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一 VideoView基本介绍
  • 二 VideoView使用方法
  • 三 VideoView常见属性及方法
  • 四 VideoView简单Demo
  • 五 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档