2013-03-23 24 views
6

Chào buổi sáng/buổi sáng! Hy vọng ai đó có thể giúp tôi với một vấn đề nhỏ mà tôi đang gặp phải. Tôi đang phát tệp .mp3 từ xa bằng cách sử dụng VideoView và tùy chỉnh MediaController.Điều khiển phát lại Android VideoView Hiển thị "Phát" ban đầu thay vì "Tạm dừng" ngay cả khi tệp đã được phát

My MediaController trông như thế này:

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); 
} 

}

Và mã của tôi để gắn nó vào VideoView của tôi trông như thế này:

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(); 

Vấn đề tôi đang gặp là khi tệp .mp3 bắt đầu phát, thanh điều khiển ở phía dưới có nút "Phát" hiển thị (tức là hình tam giác) thay vì nút "Tạm dừng" (hai thanh song song) mặc dù âm thanh là đã chơi. Bất cứ ai cũng biết làm thế nào để sửa lỗi này?

CHỈNH SỬA 1:

Tôi cũng sẽ quan tâm đến bất kỳ giải pháp nào khác để phát từ xa .mp3. Các yêu cầu duy nhất tôi có là người dùng có thể tạm dừng/phát âm thanh và cũng có thể xem tên của tệp âm thanh (tiêu đề) là gì.

Cảm ơn bạn!

+2

Bạn đã giải quyết vấn đề này chưa? –

+0

Đã giải quyết vấn đề này – iAviatorJose

Trả lời

0

Đơn giản chỉ cần:

@Override 
     public void onPrepared(MediaPlayer arg0) { 

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

Hãy thử này: Nó giải quyết được vấn đề đối với tôi.

mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
    @Override 
    public void onPrepared(MediaPlayer mp) { 
     mp.start(); 
     mMediaController.show(); 
    } 
}); 
Các vấn đề liên quan