From 718f31c92e2029d05260810435a2c70cef6e6ce5 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期四, 24 四月 2025 10:45:55 +0800 Subject: [PATCH] save --- app/src/main/java/com/sinata/xqmuse/ui/login/InputCodeActivity.kt | 71 ++++++++++++++++++++++------------- 1 files changed, 45 insertions(+), 26 deletions(-) diff --git a/app/src/main/java/com/sinata/xqmuse/ui/login/InputCodeActivity.kt b/app/src/main/java/com/sinata/xqmuse/ui/login/InputCodeActivity.kt index e37c81e..7a66bc0 100644 --- a/app/src/main/java/com/sinata/xqmuse/ui/login/InputCodeActivity.kt +++ b/app/src/main/java/com/sinata/xqmuse/ui/login/InputCodeActivity.kt @@ -5,16 +5,17 @@ import android.text.Editable import android.text.TextWatcher import android.view.KeyEvent +import android.view.MotionEvent import android.view.inputmethod.InputMethodManager import androidx.core.os.bundleOf -import cn.sinata.xldutils.utils.SpanBuilder -import cn.sinata.xldutils.utils.myToast -import cn.sinata.xldutils.utils.showAllowingStateLoss +import cn.sinata.xldutils.utils.* +import cn.sinata.xldutils.utils.hideBankCard import com.sinata.xqmuse.R import com.sinata.xqmuse.dialog.MsgDialog import com.sinata.xqmuse.network.HttpManager import com.sinata.xqmuse.network.request import com.sinata.xqmuse.ui.TransparentStatusBarActivity +import com.sinata.xqmuse.utils.Const import kotlinx.android.synthetic.main.activity_input_code.* import org.jetbrains.anko.startActivity import java.util.* @@ -30,7 +31,7 @@ private val timer by lazy { object : CountDownTimer(60000, 1000) { override fun onFinish() { - tv_3.text = "可重新获取短信验证码" + tv_3.text = "" tv_get_code.isEnabled = true tv_get_code.alpha = 1f } @@ -70,9 +71,11 @@ }) msgDialog.showAllowingStateLoss(supportFragmentManager,"check") }else{ + et_6.setText("") tv_action.isEnabled = true - myToast("验证失败") - + val msgDialog = MsgDialog() + msgDialog.arguments = bundleOf("msg" to "手机号验证失败","title" to "验证失败") + msgDialog.showAllowingStateLoss(supportFragmentManager,"check") } }){_,_-> tv_action.isEnabled = true @@ -94,11 +97,20 @@ codeEts[cursorIndex].requestFocus() } } else { - code.deleteCharAt(code.lastIndex) - if (cursorIndex != 0) { //还没删到第一个 - cursorIndex-- - codeEts[cursorIndex].requestFocus() //焦点交给上一个 +// code.deleteCharAt(code.lastIndex) +// if (cursorIndex != 0) { //还没删到第一个 +// cursorIndex-- +// codeEts[cursorIndex].requestFocus() //焦点交给上一个 +// } + if (code.isNotEmpty()){ + cursorIndex = 0 + code.delete(0,code.length) + codeEts.forEach { + it.setText("") + } + et_1.requestFocus() } + } } @@ -108,29 +120,36 @@ override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) { } }) -// it.setOnKeyListener { _, keyCode, event -> -// if (keyCode == KeyEvent.KEYCODE_DEL && event.action == KeyEvent.ACTION_UP) { -// if (cursorIndex != 0) { -// codeEts[cursorIndex - 1].setText("") -// } -// } -// false -// } - it.setOnFocusChangeListener { v, hasFocus -> - if (hasFocus){ - codeEts[cursorIndex].requestFocus() - val imm = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager - imm.showSoftInput(codeEts[cursorIndex], InputMethodManager.SHOW_FORCED) + + it.setOnKeyListener { v, keyCode, event -> + if (keyCode == KeyEvent.KEYCODE_DEL&&it.text.isEmpty()&&cursorIndex!=0){ + code.delete(0,code.length) + cursorIndex = 0 + codeEts.forEach { + it.setText("") + } + et_1.requestFocus() } + return@setOnKeyListener false } } } override fun initView() { - tv_2.text = "验证码已发送至:${phone}" + if (!SPUtils.instance().getString(Const.User.TOKEN).isNullOrEmpty()) + title = "修改密码" + tv_2.text = "验证码已发送至:${phone.formatPhone()}" tv_get_code.isEnabled = false tv_get_code.alpha = 0.5f timer.start() - } + et_1.postDelayed({ + try { + et_1.requestFocus() + (getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager) + .showSoftInput(et_1, InputMethodManager.SHOW_FORCED) + }catch (e:Exception){ -} + } + },500) + } +} \ No newline at end of file -- Gitblit v1.7.1