器的主界面 mMediaPlayer01.prepare(); 主程序构建了MediaPlayer 0对象.通过MediaPlayer.setDis- Log.1mG,。
Duration:‘4-mMediaPlayer01.getDurationO); mMediaPlayer01.seekTo(currentPosition); play(SurfaceHolder)方法。
让MediaPlayer播放影片时,将图像 mMediaPlayer01.start(); 显示在指定的SurfaceView中。
播放器主要方法的相关代码如下: blsReleased=false; private void playVideo(final String strPath){ }catch{Exception e){ tⅣ{ Log.e(TAG.e.getMessageO,e): currentFilePath=strPath; } ,*重新构建MediaPlayer对象。
, l mMediaPtayer01=new MediaPlayerO; }: 严设嚣播放音量*/mMediaPlayerOlsetAudioStrearrfrype《2): new Thread(r).start(); ,*设置显示于SurfaceHoIder。
, l catch(Exception e}{ mMediaPlayer01.setDisplay(mSurfaceHolder01): if《mMediaPlayer01 l=null}{ mMediaPlayer01.setonErrorListener《new Medi- mMediaPlayer01.stop(); aPlayer.OnErrorListener《}{ mMediaPlayer01.release(); @Override } public boolean onError(MediaPlayer mp,int what, } int extra){ } ,,TODO Auto-generated method stub 5.2 Menu功能菜单 Log.i《TAG,。
Error on Listener.what:。
4-what Menu功能菜单如图5所示。
实现Menu功能菜单主要通过 4-。
extra:‘4-extra); return false; 手机接口的Menu Shotcut,也就是所谓的Menu Key。
程序除了 } 默认覆盖的OnCreat之外,还需要另外新建两个类函数:onCllB- J): 0与onOptionsltemSelected 0,前者为创建Menu atoptionsMenu mMediaPlayer01.setOnBufferingUpdateListener 《new 菜单的项目,后者是处理菜单被选择运行后的时间处理。
以下 MediaPlayer.OnBufferingUpdateListener(){ 是onCreatoptionsMenu 0与onOptionsItemSeleeted 0的源代码: @0verride j public void onBufferingUpdate(MediaPlayer m p,int percent){ public boolean onCreateClptionsMenu(Menu menu}l Log.i《TAG,。
Update buffer:‘4-Integer.toString(percent}+。
%。
}; super.onCreateOptionsMenu(menu); , //Add new voices,with name and icon,to Activity Menu ”: menu.add(O,of o,。
网络状态“).setlcon(R.drawable.network_48); mMediaPtayer01.setOnCompletionListener(new Medi- menu.add(1.1.