代号一个媒体播放器滑块



我正在尝试以代号一创建一个音乐播放应用程序,我在向媒体播放器添加滑块时遇到问题。应用程序运行时显示滑块,但在播放文件时不显示进度.这是我用来添加自定义播放和暂停按钮以及滑块的代码

     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更新当前滑块值。确保这不会触发事件触发,也不会将你送入循环。

相关内容

最新更新