最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android項目實現(xiàn)視頻播放器

 更新時間:2021年03月02日 10:44:40   作者:我就是咸魚  
這篇文章主要為大家詳細介紹了Android項目實現(xiàn)視頻播放器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Android項目實現(xiàn)視頻播放器的具體代碼,供大家參考,具體內(nèi)容如下

VideoView控件是播放視頻用的,借助它可以完成一個簡易的視頻播放器。

①在activity_main.xml中編寫相應(yīng)的控件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context=".MainActivity">
 <ImageView
 android:id="@+id/bt_play"
 android:layout_width="80dp"
 android:layout_height="80dp"
 android:layout_alignParentBottom="true"
 android:layout_centerHorizontal="true"
 android:layout_marginBottom="150dp"
 android:src="@android:drawable/ic_media_play" />
 <VideoView
 android:id="@+id/videoview"
 android:layout_width="match_parent"
 android:layout_height="match_parent" />
</RelativeLayout>

②在MainActivity實現(xiàn)SeekBar.OnSeekChangeListener接口與SurfaceHolder.Callback接口,并重寫這兩個接口中對應(yīng)的方法,在這些方法中實現(xiàn)播放視頻的。

package com.example.videoview;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity implements
 View.OnClickListener {
 private VideoView videoView;
 private MediaController controller;
 ImageView iv_play;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 videoView = (VideoView) findViewById(R.id.videoview);
 iv_play = (ImageView) findViewById(R.id.bt_play);
 //拼出在資源文件夾下的視頻文件路徑String字符串
 String url = "android.resource://" + getPackageName() + "/" + R.raw.video;
 //字符串解析成Uri
 Uri uri = Uri.parse(url);
 //設(shè)置videoview的播放資源
 videoView.setVideoURI(uri);
 //VideoView綁定控制器
 controller = new MediaController(this);
 videoView.setMediaController(controller);
 iv_play.setOnClickListener(this);
 }
 @Override
 public void onClick(View v) {
 switch (v.getId()) {
  case R.id.bt_play:
  play();
  break;
 }
 }
 // 播放視頻
 private void play() {
 if (videoView != null && videoView.isPlaying()) {
  iv_play.setImageResource(android.R.drawable.ic_media_play);
  videoView.stopPlayback();
  return;
 }
 videoView.start();
 iv_play.setImageResource(android.R.drawable.ic_media_pause);
 videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
  @Override
  public void onCompletion(MediaPlayer mp) {
  iv_play.setImageResource(android.R.drawable.ic_media_play);
  }
 });
 }
}

③修改清單文件,設(shè)置屬性screenOrientation為橫向。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

颍上县| 云龙县| 南岸区| 赞皇县| 洛浦县| 虞城县| 五华县| 灵宝市| 青浦区| 平乡县| 普兰店市| 建昌县| 云龙县| 达拉特旗| 桑植县| 呼图壁县| 漳州市| 孟村| 丰台区| 太原市| 九台市| 丹凤县| 体育| 铁岭县| 商都县| 若尔盖县| 乐至县| 固安县| 奉贤区| 湖口县| 司法| 博野县| 辛集市| 浪卡子县| 大英县| 宿迁市| 鲁甸县| 平舆县| 三都| 宁阳县| 中山市|