
結合VideoView與MediaController功能的播放器可以播放video與audio檔案,說明如下:
VideoView:專門用來載入各種video檔案內容,與其他視窗元件一樣,VideoView可以直接以layout檔案來設定
MediaController:是一個簡易的播放面版,提供基本的影音播放操作功能
1.設計Ch9_3_VideoView.java
- package com.example.Ch9_3_VideoView;
- import android.media.MediaPlayer;
- import android.os.Bundle;
- import android.app.Activity;
- import android.view.Menu;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.MediaController;
- import android.widget.TextView;
- import android.widget.VideoView;
- public class Ch9_3_VideoView extends Activity {
- Button btn1,btn2,btn3;
- TextView tv1;
- MediaPlayer mp;
- boolean stoped=true;
- VideoView vv;
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- btn1=(Button)findViewById(R.id.button1);
- btn2=(Button)findViewById(R.id.button2);
- btn3=(Button)findViewById(R.id.button3);
- tv1=(TextView)findViewById(R.id.tv1);
- //VideoView播放器
- vv=(VideoView)findViewById(R.id.videoView1);
- String path="/mnt/sdcard/baby.mp4";
- vv.setVideoPath(path);
- MediaController mc=new MediaController(this);
- vv.setMediaController(mc);
- vv.start();
- btn1.setOnClickListener(new OnClickListener(){
- public void onClick(View v) {
- if(mp==null || stoped){
- mp=MediaPlayer.create(Ch9_1_ResourcesMedia.this, R.raw.lee);
- stoped=false;
- }
- tv1.setText("播放中...檔案來源---"+getString(R.raw.lee));
- mp.start();
- }});
- btn2.setOnClickListener(new OnClickListener(){
- public void onClick(View v) {
- mp.pause();
- }});
- btn3.setOnClickListener(new OnClickListener(){
- public void onClick(View v) {
- mp.stop();
- stoped=true;
- }});
- }
- @Override
- protected void onPause() {
- super.onPause();
- if(mp !=null){
- mp.release();
- mp=null;
- }
- }
- }
復制代碼
|