博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.playvideobyvideoview
阅读量:2299 次
发布时间:2019-05-09

本文共 3065 字,大约阅读时间需要 10 分钟。

package com.example.playvideobyvideoview;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.KeyEvent;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.MediaController;import android.widget.VideoView;public class MainActivity extends Activity {	VideoView videoView;	//MediaController mediaController;	Button btn_rewind, btn_play, btn_forward;	String pathString = "/sdcard/video-2.mp4";	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		btn_rewind = (Button) findViewById(R.id.rewind);		btn_play = (Button) findViewById(R.id.play);		btn_forward = (Button) findViewById(R.id.forward);		// //videoview设置/		videoView = (VideoView) findViewById(R.id.videoview);		// 定义MediaController对象		//mediaController = new MediaController(this);		// 把MediaController对象绑定到VideoView上		//mediaController.setAnchorView(videoView);		// 设置VideoView的控制器是mediaController		//videoView.setMediaController(mediaController);		videoView.requestFocus();		try {			videoView.setVideoPath(pathString);			videoView.start();		} catch (Exception e) {			// TODO: handle exception			System.out.println(e.toString());		}		btn_rewind.setOnClickListener(new OnClickListener() {			@Override			public void onClick(View v) {				// TODO Auto-generated method stub				// /view方式				if (videoView.canSeekBackward()) {					System.out.println("back, now is "							+ videoView.getCurrentPosition());					videoView.seekTo(videoView.getCurrentPosition() - 10000);				} else {					System.out.println("cant back");				}			}		});		btn_play.setOnClickListener(new OnClickListener() {			@Override			public void onClick(View v) {				// TODO Auto-generated method stub				// //view方式//				if (videoView.isPlaying()) {					videoView.pause();					btn_play.setText("播放");					System.out.println("pause ,now is "							+ videoView.getCurrentPosition());				} else {					videoView.start();					btn_play.setText("暂停");					System.out.println("play ,now is "							+ videoView.getCurrentPosition());				}			}		});		btn_forward.setOnClickListener(new OnClickListener() {			@Override			public void onClick(View v) {				// TODO Auto-generated method stub				// /view方式				if (videoView.canSeekForward()) {					System.out.println("forward ,now is "							+ videoView.getCurrentPosition());					videoView.seekTo(videoView.getCurrentPosition() + 10000);				} else {					System.out.println("cant forward");				}			}		});	}	// 当用户返回时	@Override	public boolean onKeyDown(int keyCode, KeyEvent event) {		// TODO Auto-generated method stub		if (keyCode == KeyEvent.KEYCODE_BACK) {			if (videoView != null) {				videoView.pause();				videoView.clearAnimation();			}			this.finish();			return true;		}		return super.onKeyDown(keyCode, event);	}	@Override	public boolean onCreateOptionsMenu(Menu menu) {		// Inflate the menu; this adds items to the action bar if it is present.		getMenuInflater().inflate(R.menu.main, menu);		return true;	}}

转载地址:http://jbkib.baihongyu.com/

你可能感兴趣的文章
Java jdk15没有jre文件夹问题
查看>>
lmdb.Error: 路径 : ϵͳ�Ҳ���ָ����·����解决办法
查看>>
aster.pytorch程序的配置和demo的运行
查看>>
volatile关键字
查看>>
主内存与工作内存
查看>>
SpringMVC配置文件详解(四)
查看>>
SpringMVC配置文件解析(五)
查看>>
SpringMVC配置文件详解(六)
查看>>
SpringMVC请求处理之对方法参数的处理
查看>>
Cookie和Session
查看>>
Spring源码之AOP
查看>>
Spring AOP源码(下)
查看>>
JDK1.8中接口的新特性
查看>>
装饰者模式(一)
查看>>
DelegatingFilterProxy
查看>>
CAS
查看>>
CAS简单实例
查看>>
CAS结合openldap
查看>>
数据库基础知识
查看>>
Spring事务管理
查看>>