diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b0f5fd0..2296d72 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -78,7 +78,8 @@ + android:screenOrientation="landscape" + android:windowSoftInputMode="adjustPan"/> + if (keyCode == KeyEvent.KEYCODE_DPAD_UP) { + if (event.action == KeyEvent.ACTION_DOWN) { + tryFocusBackArea() + return@OnKeyListener true + } + } else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) { + if (event.action == KeyEvent.ACTION_DOWN) { + mBinding.tvWarnSetting.requestFocus() + return@OnKeyListener true + } + } else if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER || keyCode == KeyEvent.KEYCODE_ENTER){ + if (event.action == KeyEvent.ACTION_DOWN) { + mBinding.etName.showIme() + return@OnKeyListener true + } + } + return@OnKeyListener false + } + ) } } \ No newline at end of file diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/adapter/SensorAdapter.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/adapter/SensorAdapter.kt index 4858615..8b98e10 100644 --- a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/adapter/SensorAdapter.kt +++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/adapter/SensorAdapter.kt @@ -27,6 +27,9 @@ class SensorAdapter : override fun bindView(data: GasType) { val context = binding.root.context + binding.root.setOnClickListener { + binding.sensorSetting.performClick() + } binding.sensorSetting.setOnClickListener { context.startActivity(Intent(context, SensorSettingActivity::class.java)) } diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/utils/Exts.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/utils/Exts.kt index 14fc78c..103a927 100644 --- a/app/src/main/java/com/yinuo/safetywatcher/watcher/utils/Exts.kt +++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/utils/Exts.kt @@ -2,7 +2,10 @@ package com.yinuo.safetywatcher.watcher.utils import android.content.Context import android.graphics.drawable.StateListDrawable +import android.inputmethodservice.InputMethodService import android.view.View +import android.view.inputmethod.InputMethodManager +import android.widget.EditText import android.widget.Toast import androidx.appcompat.content.res.AppCompatResources import com.yinuo.safetywatcher.watcher.ui.view.CommonToast @@ -24,4 +27,9 @@ fun View?.trySetCommonBg() { bg.addState(intArrayOf(), currentBackground) this.background = bg } +} + +fun EditText.showIme(){ + val manager = this.context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager + manager?.showSoftInput(this, 0) } \ No newline at end of file diff --git a/app/src/main/res/layout/activity_sensor_setting.xml b/app/src/main/res/layout/activity_sensor_setting.xml index 58dbbc9..94245e8 100644 --- a/app/src/main/res/layout/activity_sensor_setting.xml +++ b/app/src/main/res/layout/activity_sensor_setting.xml @@ -14,22 +14,26 @@ android:textColor="@color/white" android:textColorHint="@color/white" android:hint="@string/sensor_name_txt" + android:singleLine="true" android:paddingStart="@dimen/_30dp" + android:focusable="true" + android:nextFocusDown="@id/et_name" android:background="@drawable/cloud_sync_btn_bg"/> - - - + --> @@ -90,6 +96,7 @@ android:textColor="@color/white" android:gravity="center" android:textSize="@dimen/_30dp" + android:focusable="true" android:text="@string/sensor_init_txt" android:background="@drawable/sensor_init_btn_bg"/>