Добавление зацикливания в VideoView - PullRequest
0 голосов
/ 29 июня 2018

У меня небольшие проблемы с небольшим приложением, которое я собрал в Android Studio. По сути, приложение должно запускаться - автоматически воспроизводить видео и продолжать цикл до тех пор, пока к нему не прикоснутся ...

У меня есть все, кроме работы циклов - я попробовал несколько предложений отсюда, но ни один из них не работал в моем случае (или не имел навыков кодирования, чтобы получить их ...)

Основной код ниже

package com.pixel.danny.screensaverhfx;

import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.VideoView;

public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    VideoView videoView = findViewById(R.id.videoView);
    Uri uri=Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.hab);
    videoView.setVideoURI(uri);
    videoView.requestFocus();

    videoView.start();
    videoView.setOnClickListener(new View.OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            finish();
        }
    });    }
}

Ответы [ 2 ]

0 голосов
/ 29 июня 2018

что делает приведенный ниже код, когда вы нажимаете Videoview, когда вы закончите упражнение, чтобы приложение приблизилось ...

videoView.setOnClickListener(new View.OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            finish();   //remove this line 
            videoView.stopPlayback() // you can use this for stopPlay
        }
    });   

Так что удалите finish(); ваша проблема получила разрешение

и если вы хотите зациклить

 videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
        @Override
        public void onCompletion(MediaPlayer mp) {
              Toast.makeText(getApplicationContext(), "Video completed", Toast.LENGTH_LONG).show();
              videoView.start();   //it will start again
        }
    });
0 голосов
/ 29 июня 2018

Вместо звонка finish(); вместо звонка videoView.stopPlayback()

...