안 드 로 이 드 프로젝트 비디오 재생 기 구현

본 논문 의 사례 는 안 드 로 이 드 프로젝트 가 영상 재생 기 를 실현 하 는 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
VideoView 컨트롤 은 동 영상 을 재생 하 는 데 사용 되 며,이 를 통 해 간단 하고 쉬 운 동 영상 재생 기 를 완성 할 수 있다.
① activitymain.xml 에서 해당 하 는 컨트롤 을 작성 합 니 다.

<?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 에서 SeekBar.OnSeekChange Listener 인터페이스 와 Surface Holder.Callback 인 터 페 이 스 를 실현 하고 이 두 인터페이스 에 대응 하 는 방법 을 재 작성 하여 이 방법 에서 동 영상 을 재생 하 는 것 을 실현 한다.

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);
 //  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);
  }
 });
 }
}
③ 목록 파일 을 수정 하고 속성 screenOrientation 을 가로 로 설정 합 니 다.

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기