📅  最后修改于: 2021-01-05 08:37:50             🧑  作者: Mango
android.widget.VideoView类用于在应用程序中播放视频播放器。 android.widget.MediaController类提供了视频播放器的播放控件,例如播放,暂停,后退,前进等,以控制视频播放器。
使用VideoView和MediaController类,我们可以创建视频播放器。
android.widget.VideoView类提供了几种播放和控制视频播放器的方法。 VideoView类的常用方法如下:
Method | Description |
---|---|
public void setMediaController(MediaController controller) | It sets the media controller to the video view. |
public void setVideoURI (Uri uri) | It sets the URI of the video file. |
public void start() | It starts the video view. |
public void stopPlayback() | It stops the playback. |
public void pause() | It pauses the playback. |
public void suspend() | It suspends the playback. |
public void resume() | It resumes the playback. |
public void seekTo(int millis) | It seeks to specified time in milliseconds. |
在此示例中,我们在VideoView中播放视频。
在activity_main.xml文件中添加以下设计代码。在此文件中,我们将VideoView放在FrameLayout内。
在MainActivity.kt类中添加以下代码。在此类中,我们从sdcard / Movies目录中读取视频文件video.mp4。通过创建Uri类的实例放置视频文件的路径,并将其传递给VideoView.setVideoURI(Uri) 。要播放视频文件,请调用VideoView的start()方法。
package example.javatpoint.com.kotlinvideoplayer
import android.net.Uri
import android.net.Uri.*
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.os.Environment
import android.widget.MediaController
import android.widget.VideoView
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val videoView = findViewById(R.id.videoView)
//Creating MediaController
val mediaController = MediaController(this)
mediaController.setAnchorView(videoView)
//specify the location of media file
val uri:Uri = parse(Environment.getExternalStorageDirectory().getPath() + "/Movies/video.mp4")
//Setting MediaController and URI, then starting the videoView
videoView.setMediaController(mediaController)
videoView.setVideoURI(uri)
videoView.requestFocus()
videoView.start()
}
}
在AndroidManifest.xml文件中添加以下uses-permission。
输出: