Android загружает анимацию перед запуском VideoView - PullRequest
12 голосов
/ 02 мая 2011

Я не нахожу никакого решения для отображения анимации загрузки (или просто imageView) перед началом воспроизведения VideoView: во время буферизации видео.

У кого-нибудь есть подсказка?

Спасибо.

Ответы [ 3 ]

41 голосов
/ 25 апреля 2012

Или вы можете просто использовать Progress Dialog;

public class VideoEkrani extends Activity {

    VideoView ekran;
    String kaynakYolu = "http://commonsware.com/misc/test2.3gp";
    ProgressDialog progDailog;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.sayfa_video_goruntule);


        ekran = (VideoView) findViewById(R.id.videoViewESPU);
        ekran.setMediaController(new MediaController(this));
        ekran.setVideoURI(Uri.parse(kaynakYolu));
        ekran.requestFocus();
        ekran.start();

        progDailog = ProgressDialog.show(this, "Please wait ...", "Retrieving data ...", true);

        ekran.setOnPreparedListener(new OnPreparedListener() {

            public void onPrepared(MediaPlayer mp) {
                // TODO Auto-generated method stub
                progDailog.dismiss();
            }
        });
    }
}
6 голосов
/ 03 мая 2011

Наконец я нашел метод setOnPreparedListener() в VideoView.

Я добавил ProgressBar в свой макет и скрыл его с помощью OnPreparedListener

4 голосов
/ 16 октября 2015

Невозможно определить видеобуфер, используя OnBufferingUpdateListener на MediaPlayer.Если вы используете VideView, установите этот слушатель внутри OnPreparedListener.

videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
   public void onPrepared(MediaPlayer mp) {
     mp.setOnBufferingUpdateListener(new MediaPlayer.OnBufferingUpdateListener() {
       @Override
       public void onBufferingUpdate(MediaPlayer mp, int percent) {
         if(percent == 100){
           //video have completed buffering
         }
       }
     });
   }
});
...