|
@@ -11,6 +11,7 @@ import android.view.LayoutInflater;
|
|
import android.view.View;
|
|
import android.view.View;
|
|
import android.widget.FrameLayout;
|
|
import android.widget.FrameLayout;
|
|
import android.widget.ImageView;
|
|
import android.widget.ImageView;
|
|
|
|
+import android.widget.SeekBar;
|
|
import android.widget.TextView;
|
|
import android.widget.TextView;
|
|
|
|
|
|
import com.cooleshow.base.utils.DateUtil;
|
|
import com.cooleshow.base.utils.DateUtil;
|
|
@@ -69,6 +70,9 @@ public class CourseWarePlayView extends FrameLayout implements View.OnClickListe
|
|
private TextView mTvPackUp;
|
|
private TextView mTvPackUp;
|
|
private String fileUrl;
|
|
private String fileUrl;
|
|
private OnEventListener mEventListener;
|
|
private OnEventListener mEventListener;
|
|
|
|
+ private View mViewVolumeHelp;
|
|
|
|
+ private ImageView mIvVolume;
|
|
|
|
+ private CoursewarePlayVolumeControlPop mCoursewarePlayVolumeControlPop;
|
|
|
|
|
|
|
|
|
|
public CourseWarePlayView(@NonNull Context context) {
|
|
public CourseWarePlayView(@NonNull Context context) {
|
|
@@ -93,10 +97,36 @@ public class CourseWarePlayView extends FrameLayout implements View.OnClickListe
|
|
mTvProgress = findViewById(R.id.tv_progress);
|
|
mTvProgress = findViewById(R.id.tv_progress);
|
|
mTvStatusText = findViewById(R.id.tv_status_text);
|
|
mTvStatusText = findViewById(R.id.tv_status_text);
|
|
mTvTotalProgress = findViewById(R.id.tv_total_progress);
|
|
mTvTotalProgress = findViewById(R.id.tv_total_progress);
|
|
|
|
+ mViewVolumeHelp = findViewById(R.id.view_volume_help);
|
|
|
|
+ mIvVolume = findViewById(R.id.iv_volume);
|
|
|
|
+ mIvVolume.setOnClickListener(this);
|
|
mIvPlay.setOnClickListener(this);
|
|
mIvPlay.setOnClickListener(this);
|
|
findViewById(R.id.tv_close).setOnClickListener(this);
|
|
findViewById(R.id.tv_close).setOnClickListener(this);
|
|
mTvPackUp = findViewById(R.id.tv_pack_up);
|
|
mTvPackUp = findViewById(R.id.tv_pack_up);
|
|
mTvPackUp.setOnClickListener(this);
|
|
mTvPackUp.setOnClickListener(this);
|
|
|
|
+ initListener();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private void initListener() {
|
|
|
|
+ mSeekbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
|
|
|
|
+ @Override
|
|
|
|
+ public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void onStartTrackingTouch(SeekBar seekBar) {
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void onStopTrackingTouch(SeekBar seekBar) {
|
|
|
|
+ int progress = mSeekbar.getProgress();
|
|
|
|
+ float percent = progress / 100f;
|
|
|
|
+ Log.i("pq", "seekTo:" + percent);
|
|
|
|
+ getAudioMixerManager().seekTo(percent);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
}
|
|
}
|
|
|
|
|
|
public void setName(String name) {
|
|
public void setName(String name) {
|
|
@@ -117,6 +147,31 @@ public class CourseWarePlayView extends FrameLayout implements View.OnClickListe
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void showVolumeChangePop() {
|
|
|
|
+ if (mCoursewarePlayVolumeControlPop == null) {
|
|
|
|
+ mCoursewarePlayVolumeControlPop = new CoursewarePlayVolumeControlPop(getContext());
|
|
|
|
+ mCoursewarePlayVolumeControlPop.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
|
|
|
|
+ @Override
|
|
|
|
+ public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
|
|
|
|
+ getAudioMixerManager().updateCurrentUserVolume(progress);
|
|
|
|
+ getAudioMixerManager().updateOtherUserVolume(progress);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void onStartTrackingTouch(SeekBar seekBar) {
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void onStopTrackingTouch(SeekBar seekBar) {
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+// mCoursewarePlayVolumeControlPop.setCurrentVolume(getAudioMixerManager().getPlaybackVolume());
|
|
|
|
+ mCoursewarePlayVolumeControlPop.showAsDropDown(mViewVolumeHelp);
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* Added from 5.1.4
|
|
* Added from 5.1.4
|
|
* 混音播放进度,默认 200 毫秒回调一次
|
|
* 混音播放进度,默认 200 毫秒回调一次
|
|
@@ -220,6 +275,11 @@ public class CourseWarePlayView extends FrameLayout implements View.OnClickListe
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ if (id == R.id.iv_volume) {
|
|
|
|
+ showVolumeChangePop();
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
private void restart() {
|
|
private void restart() {
|