Mike Hopeman
- Forum-Beiträge: 31
08.04.2014, 14:30:44 via Website
08.04.2014 14:30:44 via Website
Hallo zusammen,
ich möchte in einer Aktivity in einer VideoView mehrere Videos hintereinander von der SD-Karte abspielen. Ein Video soll solange in einer Loop laufen, bis ein Button gedrückt wird, dann soll das nächste starten und so weiter. Das Abspielen in einer Loop funktioniert einwandfrei, aber ich weiß nicht, wie ich die Abfrage mit dem Button am Besten implementiere.
Mein Code bisher:
ich möchte in einer Aktivity in einer VideoView mehrere Videos hintereinander von der SD-Karte abspielen. Ein Video soll solange in einer Loop laufen, bis ein Button gedrückt wird, dann soll das nächste starten und so weiter. Das Abspielen in einer Loop funktioniert einwandfrei, aber ich weiß nicht, wie ich die Abfrage mit dem Button am Besten implementiere.
Mein Code bisher:
1//OnClick on stop video button
2 btn_stop_video.setOnClickListener(new View.OnClickListener() {
3 public void onClick(View v) {
4
5 video_done = true;
6
7 //get elapsed time from the start of the activity until the button click
8 elapsed_time_in_sec = stopwatch.getElapsedTime().getElapsedRealtimeMillis() / 1000;
9 Log.d(TAG, "Exercise duration: " + elapsed_time_in_sec + " seconds");
10 });
11
12 //play the single exercise videos of this level
13 for (int i = current_exercise; i <= exerciseNumber; i++) {
14 Log.d(TAG, "Current exercise: " + i + " from "+ exerciseNumber);
15
16 tv_repetitions.setText("Bitte diese Übung " +
17 feed.getExercise(i).getRepetitions() + " Mal wiederholen");
18
19 //create file of the video which should be played
20 File clip = new File(Environment.getExternalStorageDirectory().getAbsolutePath() +
21 feed.getExercise(i).getPathToVideo());
22 //check if the sd card is mounted or shared
23 Log.d(TAG, "External Storage State is: " + Environment.getExternalStorageState());
24
25 if (clip.exists()) {
26 Log.d(TAG, "Video exist, path is: " + Environment.getExternalStorageDirectory()
27 .getAbsolutePath() + feed.getExercise(i).getPathToVideo());
28
29 //start video in the VideoView
30 video_view.setVideoPath(clip.getAbsolutePath());
31 video_view.setMediaController(null);
32 video_view.requestFocus();
33 //play video in a loop
34 video_view.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
35 @Override
36 public void onPrepared(MediaPlayer mp) {
37 mp.setLooping(true);
38 }
39 });
40 video_view.start();
41 } else {
42 Log.d(TAG, "Video DOES NOT exist, path is: " + Environment.getExternalStorageDirectory()
43 .getAbsolutePath() + feed.getExercise(i).getPathToVideo());
44 }
45 }
2 btn_stop_video.setOnClickListener(new View.OnClickListener() {
3 public void onClick(View v) {
4
5 video_done = true;
6
7 //get elapsed time from the start of the activity until the button click
8 elapsed_time_in_sec = stopwatch.getElapsedTime().getElapsedRealtimeMillis() / 1000;
9 Log.d(TAG, "Exercise duration: " + elapsed_time_in_sec + " seconds");
10 });
11
12 //play the single exercise videos of this level
13 for (int i = current_exercise; i <= exerciseNumber; i++) {
14 Log.d(TAG, "Current exercise: " + i + " from "+ exerciseNumber);
15
16 tv_repetitions.setText("Bitte diese Übung " +
17 feed.getExercise(i).getRepetitions() + " Mal wiederholen");
18
19 //create file of the video which should be played
20 File clip = new File(Environment.getExternalStorageDirectory().getAbsolutePath() +
21 feed.getExercise(i).getPathToVideo());
22 //check if the sd card is mounted or shared
23 Log.d(TAG, "External Storage State is: " + Environment.getExternalStorageState());
24
25 if (clip.exists()) {
26 Log.d(TAG, "Video exist, path is: " + Environment.getExternalStorageDirectory()
27 .getAbsolutePath() + feed.getExercise(i).getPathToVideo());
28
29 //start video in the VideoView
30 video_view.setVideoPath(clip.getAbsolutePath());
31 video_view.setMediaController(null);
32 video_view.requestFocus();
33 //play video in a loop
34 video_view.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
35 @Override
36 public void onPrepared(MediaPlayer mp) {
37 mp.setLooping(true);
38 }
39 });
40 video_view.start();
41 } else {
42 Log.d(TAG, "Video DOES NOT exist, path is: " + Environment.getExternalStorageDirectory()
43 .getAbsolutePath() + feed.getExercise(i).getPathToVideo());
44 }
45 }
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.