小伙伴们,在上文中我们介绍了Android视图组件WebView,本文我们继续盘点,介绍一下视图控件的VideoView。
videoView是Android平台上用于播放视频的控件,它提供了一些常见属性和方法来控制视频的播放。
在布局文件中添加VideoView:
<VideoView
android:id="@+id/videoview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
在Java代码中使用VideoView加载和播放视频:
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文件中进行相应的声明。
属性:
方法:
准备视频文件: 在项目的res目录下创建raw文件夹,并将要播放的视频文件(例如video.mp4)放入该文件夹中。
在布局文件中添加VideoView:
<VideoView
android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
在Java代码中加载和播放视频:
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)来提供基本的视频播放控制,例如播放、暂停、快进和快退等。