u010944911 2016-06-20 10:34 采纳率: 0%
浏览 1899

videoview使用缓冲图标的问题请教

当简单使用videoview时,视频没播放前这个缓冲圈在,可当视频播放中,这个缓冲圈仍然在,请问该如何在视频开始播放的时候这个缓冲圈就让他消失掉?

package com.ydtx.video.ui.activity;

import com.ydtx.video.util.BaseActivity;
import com.ydtx.video.util.LogUtil;
import com.ydtx.video.y.IsV;
import com.ydtx.video.y.PnicaiE;
import com.ydtx.xgvideo.R;

import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.Window;
import android.widget.Chronometer;
import android.widget.MediaController;
import android.widget.ProgressBar;
import android.widget.VideoView;

public class VideoPlayActivity extends BaseActivity implements OnCompletionListener,OnPreparedListener{
private static String TAG="VideoPlayActivity";
VideoView vi;
ProgressBar pb;
MediaController mediaco;
String videourl;
private int duration;
private Chronometer timer;
@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
requestWindowFeature(Window.FEATURE_NO_TITLE);
init();
LogUtil.i("U",videourl);
Uri uri = Uri.parse(videourl);
vi.setVideoURI(uri);
vi.setMediaController(mediaco);
mediaco.setMediaPlayer(vi);

//让VideiView获取焦点

vi.requestFocus();
}
private void init() {
setContentView(R.layout.activity_video_play);
vi=(VideoView) findViewById(R.id.videoView);
pb=(ProgressBar) findViewById(R.id.pb);
mediaco=new MediaController(this);
Intent intent=getIntent();
videourl=intent.getStringExtra("videourl");
timer = (Chronometer)this.findViewById(R.id.chronometer);
vi.setOnCompletionListener(this);
vi.setOnPreparedListener(this);
}
@Override
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
LogUtil.i(TAG, "onCompletion");
if(new IsV().IsV(getBaseContext())){
finish();
}else {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
new PnicaiE(VideoPlayActivity.this).show();
}
}
@Override
public void onPrepared(MediaPlayer mp) {
LogUtil.i(TAG, "onPrepared");
duration = vi.getDuration();
// TODO Auto-generated method stub
vi.start();
timer.start();
}

}

[code=text]<?xml version="1.0" encoding="utf-8"?>
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/black" >

<VideoView
    android:id="@+id/videoView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center" />

<ProgressBar
    android:id="@+id/pb"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center" />

<Chronometer
    android:id="@+id/chronometer"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="right"
    android:textColor="@android:color/white"
    android:text="%s" />

[/code]

  • 写回答

1条回答 默认 最新

  • 兵哥wyb 2016-06-21 02:40
    关注

    public void onPrepared(MediaPlayer mp) {
    LogUtil.i(TAG, "onPrepared");
    duration = vi.getDuration();
    // TODO Auto-generated method stub
    vi.start();
    ** pb.setVisibility(View.GONE);**
    timer.start();
    }

    }

    在 vi.start();后加上把它隐藏掉就好了

    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献