From 795c836f0c538c939fd5194d70df37fc490ad100 Mon Sep 17 00:00:00 2001 From: chengbin <261319845@qq.com> Date: Thu, 12 Dec 2024 18:42:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9sos=E6=8A=A5=E8=AD=A6?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../watcher/base/BaseActivity.kt | 34 ++-- .../safetywatcher/watcher/ui/HomeActivity.kt | 13 +- app/src/main/res/layout/activity_base.xml | 180 ++++++++++-------- 3 files changed, 120 insertions(+), 107 deletions(-) diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/base/BaseActivity.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/base/BaseActivity.kt index d8ecaf5..0533360 100644 --- a/app/src/main/java/com/yinuo/safetywatcher/watcher/base/BaseActivity.kt +++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/base/BaseActivity.kt @@ -63,15 +63,6 @@ abstract class BaseActivity : AppCompatActivity() { super.onCreate(null) setContentView(baseBinding.root) - // 测试按钮 - baseBinding.tvExit.setOnClickListener{ - val intent = Intent(Intent.ACTION_MAIN) - intent.addCategory(Intent.CATEGORY_HOME) - intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK - startActivityForResult(intent, 1111) -// finish() - } - initSound() setChildContent() initView() @@ -261,6 +252,10 @@ abstract class BaseActivity : AppCompatActivity() { } private fun dealActionUp(event: KeyEvent): Boolean { + + if(baseBinding.sosArea.visibility == View.VISIBLE){ + return true + } val repeatCount = event.repeatCount val keyCode = event.keyCode /*if (KeyEvent.KEYCODE_DPAD_LEFT == keyCode || KeyEvent.KEYCODE_DPAD_RIGHT == keyCode) { @@ -271,14 +266,17 @@ abstract class BaseActivity : AppCompatActivity() { } else */ if (keyCode == KeyEvent.KEYCODE_F1) { LogUtils.w("BaseActivity F1 up") - onSosHelp(false) - SoundUtils.stopSoundIo() + if(System.currentTimeMillis() - sosDownTime > 5000){ + onSosHelp(false) + SoundUtils.stopSoundIo() + } return true } return super.dispatchKeyEvent(event) } private var centerDownTime = 0L + private var sosDownTime = 0L private fun dealActionDown(event: KeyEvent): Boolean { val repeatCount = event.repeatCount @@ -303,6 +301,10 @@ abstract class BaseActivity : AppCompatActivity() { } } } else if (keyCode == KeyEvent.KEYCODE_F1) { + sosDownTime == System.currentTimeMillis(); + if(baseBinding.sosArea.visibility == View.VISIBLE){ + return true + } LogUtils.w("BaseActivity F1 pressed") onSosHelp() SoundUtils.playSoundIo() @@ -320,6 +322,15 @@ abstract class BaseActivity : AppCompatActivity() { return } LztekUtil.setSosStatus(sos) + if (sos) { + if (baseBinding.sosArea.visibility == View.GONE) { + baseBinding.sosArea.visibility = View.VISIBLE + } + } else { + if (baseBinding.sosArea.visibility == View.VISIBLE) { + baseBinding.sosArea.visibility = View.GONE + } + } GlobalScope.launch(Dispatchers.IO) { devicesApi.sendSosAlarm() } @@ -336,6 +347,7 @@ abstract class BaseActivity : AppCompatActivity() { } + private fun hideVoiceArea() { lastFocusView?.requestFocus() baseBinding.areaSound.visibility = View.GONE diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/HomeActivity.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/HomeActivity.kt index e3e64bc..77fe1c2 100644 --- a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/HomeActivity.kt +++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/HomeActivity.kt @@ -310,18 +310,7 @@ class HomeActivity : NoOptionsActivity() { Process.killProcess(Process.myPid()) } - override fun onSosHelp(sos: Boolean) { - super.onSosHelp(sos) - if (sos) { - if (mBinding.tvSos.visibility == View.GONE) { - mBinding.tvSos.visibility = View.VISIBLE - } - } else { - if (mBinding.tvSos.visibility == View.VISIBLE) { - mBinding.tvSos.visibility = View.GONE - } - } - } + override fun onBackPressed() { // super.onBackPressed() diff --git a/app/src/main/res/layout/activity_base.xml b/app/src/main/res/layout/activity_base.xml index 9c9da43..0863dca 100644 --- a/app/src/main/res/layout/activity_base.xml +++ b/app/src/main/res/layout/activity_base.xml @@ -1,108 +1,120 @@ - - + android:id="@+id/container" + android:layout_width="match_parent" + android:layout_height="match_parent"> + - + android:layout_centerInParent="true" + android:background="@drawable/warn_setting_btn_bg" + android:padding="@dimen/_20dp" + android:visibility="gone"> + + - + + + + + + + + + + + - + - - - - + android:textSize="@dimen/_132dp" + /> - - - - \ No newline at end of file