[英]codename one Mediaplayer slider
我試圖創建一個代號為1的音樂播放應用程序,將滑塊添加到媒體播放器時遇到問題。該滑塊在應用程序運行時顯示,但在播放文件時不顯示進度。我用來添加自定義播放和暫停按鈕以及滑塊的代碼
try {
video = MediaManager.createMedia(sample_url, false);
myslider.setMinValue(0);
myslider.setMaxValue(video.getDuration()/1000);
myslider.setIncrements(1);
myslider.addDataChangedListener(new DataChangedListener(){
@Override
public void dataChanged(int type, int index) {
video.setTime(myslider.getProgress()*1000);
}
});
} catch (Exception err) {
Log.e(err);
ToastBar.Status status = ToastBar.getInstance().createStatus();
status.setMessage(" error loading sample file");
status.show();
status.clear();
}
sample.add(BorderLayout.SOUTH,myslider);
play.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent evt) {
//To change body of generated methods, choose Tools | Templates.
//StreamFile(songDetails,sample_url);
if(!video.isPlaying()){
video.play();
sample.removeComponent(play);
sample.revalidate();
sample.add(BorderLayout.WEST,pause);
sample.revalidate();
}
}
});
pause.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent evt) {
//To change body of generated methods, choose Tools | Templates.
if(video.isPlaying()){
video.pause();
sample.removeComponent(pause);
sample.revalidate();
sample.add(BorderLayout.WEST,play);
sample.revalidate();
}
}
});
我看不到將偵聽器綁定到媒體並設置滑塊值的代碼,僅看到將偵聽器綁定到滑塊並設置媒體值的代碼。 請注意,您可以使用本機回放小部件查看此內容: https : //www.codenameone.com/blog/media-controls-print-developer-guide.html
您需要使用媒體的當前播放時間定期更新滑塊,例如使用UITimer
來更新當前滑塊值。 確保這不會觸發事件觸發並且不會使您陷入循環。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.