2013-03-23 12 views
6

Dzień dobry/rano! Mam nadzieję, że ktoś może mi pomóc z małym problemem, który mam. Odtwarzam zdalny plik .mp3 przy użyciu VideoView i niestandardowego MediaController.Sterowanie odtwarzaniem w systemie Android VideoView Wyświetlaj "Odtwarzaj" Początkowo Zamiast "Przerwać" Nawet jeśli plik już gra

My MediaController wygląda następująco:

public class MyMediaController extends MediaController { 

public MyMediaController(Context context) { 
    super(context);  
} 

// Do nothing on the overridden hide method so the playback controls will never go away. 
@Override 
public void hide() { 

} 

// Override the dispatchKeyEvent function to capture the back KeyEvent and tell the activity to finish. 
@Override 
public boolean dispatchKeyEvent(KeyEvent event) 
{ 
    if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) 
    { 
     ((Activity) getContext()).finish(); 
    } 

    return super.dispatchKeyEvent(event); 
} 

}

i mój kod, aby dołączyć go do mojego VideoView wygląda następująco:

VideoView videoView = (VideoView) findViewById(R.id.VideoView); 

    // Use our own media controller, which inherits from the standard one. Do this to keep 
    // playback controls from disappearing. 
    mediaController = new MyMediaController(this); 
    mediaController.setAnchorView(videoView); 

    Uri video = Uri.parse(URL); 

    videoView.setMediaController(mediaController); 
    videoView.setVideoURI(video); 

    // Set a handler that will show the playback controls as soon as audio starts. 
    videoView.setOnPreparedListener(new OnPreparedListener() { 

     @Override 
     public void onPrepared(MediaPlayer arg0) { 

      mediaController.show(); 
     } 

    }); 

    videoView.start(); 

Problem mam jest to, że gdy rozpoczyna się odtwarzanie pliku .mp3, pasek kontrolny na dole ma przycisk "Odtwarzaj" pokazujący (np. trójkąt) zamiast przycisku "Pauza" (dwa równoległe paski), mimo że dźwięk jest już grałem. Ktoś wie, jak to naprawić?

EDIT 1:

Byłbym również zainteresowany w innych rozwiązaniach do odtwarzania zdalnego .mp3. Jedyne wymagania jakie mam to to, że użytkownik może wstrzymać/odtworzyć audio, a także zobaczyć, co jest nazwa pliku audio (tytuł).

Dziękujemy!

+2

Rozwiązałeś to? –

+0

Rozwiązałem ten problem – iAviatorJose

Odpowiedz

0

prostu:

@Override 
     public void onPrepared(MediaPlayer arg0) { 

     if (mediaController.isShowing==false) {mediaController.show();} 
     } 
3

Spróbuj to: To rozwiązało problem dla mnie.

mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
    @Override 
    public void onPrepared(MediaPlayer mp) { 
     mp.start(); 
     mMediaController.show(); 
    } 
}); 
Powiązane problemy