适配中英文切换

This commit is contained in:
2026-05-08 16:39:15 +08:00
parent 428b5e507f
commit 5ee50d3785
38 changed files with 1248 additions and 191 deletions

View File

@@ -56,7 +56,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
if (isGranted) {
startRecordingMode()
} else {
Toast.makeText(this, "需要录音权限才能使用控制功能", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.recording_permission_needed, Toast.LENGTH_SHORT).show()
isRecording = false
}
}
@@ -108,29 +108,29 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
mp.isLooping = true
mp.start()
this@LiveVideoActivity.isPlaying = true
Toast.makeText(this@LiveVideoActivity, "视频准备完成", Toast.LENGTH_SHORT).show()
Toast.makeText(this@LiveVideoActivity, R.string.video_ready, Toast.LENGTH_SHORT).show()
}
setOnCompletionListener {
this@LiveVideoActivity.isPlaying = false
Toast.makeText(this@LiveVideoActivity, "播放完成", Toast.LENGTH_SHORT).show()
Toast.makeText(this@LiveVideoActivity, R.string.playback_complete, Toast.LENGTH_SHORT).show()
}
setOnErrorListener { _, what, extra ->
Toast.makeText(this@LiveVideoActivity, "播放错误: $what, $extra", Toast.LENGTH_SHORT).show()
Toast.makeText(this@LiveVideoActivity, getString(R.string.video_error_format, what, extra), Toast.LENGTH_SHORT).show()
releaseMediaPlayer()
true
}
setOnBufferingUpdateListener { _, percent ->
if (percent < 100) {
Toast.makeText(this@LiveVideoActivity, "缓冲中: $percent%", Toast.LENGTH_SHORT).show()
Toast.makeText(this@LiveVideoActivity, getString(R.string.buffering_format, percent), Toast.LENGTH_SHORT).show()
}
}
} catch (e: IOException) {
e.printStackTrace()
Toast.makeText(this@LiveVideoActivity, "无法加载视频", Toast.LENGTH_SHORT).show()
Toast.makeText(this@LiveVideoActivity, R.string.cannot_load_video, Toast.LENGTH_SHORT).show()
}
}
}
@@ -192,7 +192,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
}
binding.llAlarmLog.setOnClickListener {
Toast.makeText(this, "查看告警日志", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.view_alarm_log, Toast.LENGTH_SHORT).show()
}
// 点击xq箭头跳转到AlarmLogActivity
@@ -207,11 +207,11 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
if (mp.isPlaying) {
mp.pause()
isPlaying = false
Toast.makeText(this, "已暂停", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.paused, Toast.LENGTH_SHORT).show()
} else {
mp.start()
isPlaying = true
Toast.makeText(this, "继续播放", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.resume_playback, Toast.LENGTH_SHORT).show()
}
}
}
@@ -250,7 +250,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
binding.ivFullscreen.setImageResource(com.example.defenseapplication.R.drawable.back)
Toast.makeText(this, "已进入全屏", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.entered_fullscreen, Toast.LENGTH_SHORT).show()
}
private fun exitFullscreen() {
@@ -274,7 +274,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
binding.ivFullscreen.setImageResource(com.example.defenseapplication.R.drawable.full_screen)
Toast.makeText(this, "已退出全屏", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.exited_fullscreen, Toast.LENGTH_SHORT).show()
}
private fun toggleVoice() {
@@ -283,11 +283,11 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
if (isVoiceEnabled) {
mediaPlayer?.setVolume(1.0f, 1.0f)
binding.ivVoice.setImageResource(com.example.defenseapplication.R.drawable.voice_on_open)
Toast.makeText(this, "声音已开启", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.sound_on, Toast.LENGTH_SHORT).show()
} else {
mediaPlayer?.setVolume(0.0f, 0.0f)
binding.ivVoice.setImageResource(com.example.defenseapplication.R.drawable.voice)
Toast.makeText(this, "声音已关闭", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.sound_off, Toast.LENGTH_SHORT).show()
}
}
@@ -296,10 +296,10 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
if (isLightOn) {
binding.ivLight.setImageResource(com.example.defenseapplication.R.drawable.light_on_open)
Toast.makeText(this, "灯光已开启", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.light_on, Toast.LENGTH_SHORT).show()
} else {
binding.ivLight.setImageResource(com.example.defenseapplication.R.drawable.light_on)
Toast.makeText(this, "灯光已关闭", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.light_off, Toast.LENGTH_SHORT).show()
}
}
@@ -344,7 +344,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
// 启动麦克风脉冲动画
//startMicPulseAnimation()
Toast.makeText(this, "开始控制模式", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.start_control_mode, Toast.LENGTH_SHORT).show()
}
private fun stopRecordingMode() {
@@ -365,7 +365,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
// 停止麦克风脉冲动画
stopMicPulseAnimation()
Toast.makeText(this, "停止控制模式", Toast.LENGTH_SHORT).show()
Toast.makeText(this, R.string.stop_control_mode, Toast.LENGTH_SHORT).show()
}
// private fun startMicPulseAnimation() {
@@ -408,7 +408,7 @@ class LiveVideoActivity : AppCompatActivity(), SurfaceHolder.Callback {
start()
} catch (e: IOException) {
e.printStackTrace()
Toast.makeText(this@LiveVideoActivity, "录音启动失败", Toast.LENGTH_SHORT).show()
Toast.makeText(this@LiveVideoActivity, R.string.recording_start_failed, Toast.LENGTH_SHORT).show()
}
}
}

View File

@@ -1,13 +1,16 @@
package com.example.defenseapplication.liveVideo
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.example.defenseapplication.R
import com.example.defenseapplication.base.BaseActivity
import com.example.defenseapplication.databinding.SettingsActivityBinding
import com.example.defenseapplication.utils.LanguageUtil
import com.example.defenseapplication.view.CustomDialogFragmentText
import com.example.defenseapplication.view.LanguageDialog
import com.example.defenseapplication.view.RecognitionModeDialog
import com.gyf.immersionbar.ImmersionBar
class SettingsActivity : AppCompatActivity() {
class SettingsActivity : BaseActivity() {
private lateinit var binding: SettingsActivityBinding
@@ -34,8 +37,7 @@ class SettingsActivity : AppCompatActivity() {
binding.itemDeviceName.setOnClickListener {
val dialog = CustomDialogFragmentText()
.setTitle("设备名称")
.setInputHint("请输入设备名称")
.setTitle(getString(R.string.device_name))
.setInputText(binding.tvDeviceName.text.toString())
dialog.setOnConfirmListener { name ->
binding.tvDeviceName.text = name
@@ -45,15 +47,18 @@ class SettingsActivity : AppCompatActivity() {
binding.itemUnbindDevice.setOnClickListener {
val dialog = CustomDialogFragmentText()
.setTitle("提示")
.setMessage("确定解除该设备的绑定?")
.setNegativeText("取消")
.setPositiveText("确定")
.setTitle(getString(R.string.tip))
.setMessage(getString(R.string.logout_confirm))
.setNegativeText(getString(R.string.cancel))
.setPositiveText(getString(R.string.confirm))
.setShowInput(false)
dialog.setOnConfirmListener {
finish()
}
dialog.show(supportFragmentManager, "CustomDialogFragment")
}
}
}
}