android studio在文件选择器中选择视频并播放,用kotlin写
时间: 2024-02-22 09:56:37 浏览: 14
可以按照以下步骤实现在Android Studio中选择视频并播放:
1. 在你的布局文件中添加一个Button和一个VideoView组件:
```xml
<Button
android:id="@+id/btn_select_video"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Select Video"/>
<VideoView
android:id="@+id/video_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
```
2. 在你的Activity中添加以下代码:
```kotlin
class MainActivity : AppCompatActivity() {
private val REQUEST_CODE_SELECT_VIDEO = 101
private lateinit var videoView: VideoView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
videoView = findViewById(R.id.video_view)
val btnSelectVideo = findViewById<Button>(R.id.btn_select_video)
btnSelectVideo.setOnClickListener {
val intent = Intent(Intent.ACTION_GET_CONTENT)
intent.type = "video/*"
startActivityForResult(intent, REQUEST_CODE_SELECT_VIDEO)
}
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == REQUEST_CODE_SELECT_VIDEO && resultCode == RESULT_OK && data != null) {
val videoUri = data.data
if (videoUri != null) {
videoView.setVideoURI(videoUri)
videoView.setOnPreparedListener {
it.start()
}
}
}
}
}
```
在这段代码中,我们首先定义了一个REQUEST_CODE_SELECT_VIDEO常量,用于标识我们选择视频的请求。然后我们在onCreate方法中获取VideoView和选择视频的Button组件,并设置按钮的点击事件。在点击事件中,我们创建一个ACTION_GET_CONTENT的Intent并设置类型为video/*,然后启动一个带有请求码的Activity来选择视频。在onActivityResult方法中,我们检查请求码和结果码是否正确,并获取所选视频的URI。如果URI不为null,则设置VideoView的URI并在视频准备好后播放。