diff --git a/app/src/main/java/com/yizhuan/erban/audio/SoundSignatureActivity.kt b/app/src/main/java/com/yizhuan/erban/audio/SoundSignatureActivity.kt index b643bea1d..312125ac4 100644 --- a/app/src/main/java/com/yizhuan/erban/audio/SoundSignatureActivity.kt +++ b/app/src/main/java/com/yizhuan/erban/audio/SoundSignatureActivity.kt @@ -82,7 +82,7 @@ class SoundSignatureActivity : BaseViewBindingActivity {//保存按钮 + R.id.frSaveRecord -> {//保存按钮 finishRecord() } R.id.frDeleteBg -> {//删除按钮 @@ -306,6 +310,7 @@ class SoundSignatureActivity : BaseViewBindingActivity { MAX_RECORD_VOICE_DURATION = 60 + binding.roundProgress.setProgress(0) binding.roundProgress.setTotalProgress(60) binding.ivSoundStatus.post { binding.ivSoundStatus.setImageResource(R.drawable.ic_prepare_record) } binding.tvRecordTip.text = getString(R.string.start_record) @@ -316,12 +321,12 @@ class SoundSignatureActivity : BaseViewBindingActivity { @@ -378,6 +383,9 @@ class SoundSignatureActivity : BaseViewBindingActivity @@ -401,6 +409,9 @@ class SoundSignatureActivity : BaseViewBindingActivity() val refreshPlayStatusLiveData: MutableLiveData = _refreshPlayStatusLiveData + private val _resetStatusLiveData = MutableLiveData() + val resetStatusLiveData: MutableLiveData = _resetStatusLiveData + private val _showCountDownLiveData = MutableLiveData() val showCountDownLiveData: MutableLiveData = _showCountDownLiveData @@ -178,6 +180,8 @@ class SoundViewModel : BaseViewModel() { * 显示默认状态,即初始状态 */ fun showNormalState() { + // 正在播放:停止播放 + AudioPlayerHelper.get().endPlay() audioState = STATE_RECORD_NORMAL audioUrl = null audioDur = 0 @@ -207,7 +211,6 @@ class SoundViewModel : BaseViewModel() { fun reRecord() { if (audioState == STATE_RECORD_SUCCESS || audioState == STATE_RECORD_SAVE_SUCCESS || audioState == STATE_RECORD_AUDIT_SUCCESS) { - AudioPlayerHelper.get().endPlay() showNormalState() // 点击重录,回到初始状态 } } @@ -307,6 +310,7 @@ class SoundViewModel : BaseViewModel() { override fun onCompletion() { _refreshPlayStatusLiveData.value = false// 播放完成:停止状态(播放按钮) + _resetStatusLiveData.value = null } }) _refreshPlayStatusLiveData.value = true// 点击试听按钮此时并没有正在播放声音,则播放声音并显示正在播放状态(暂停按钮)