lmw
2025-04-24 718f31c92e2029d05260810435a2c70cef6e6ce5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
package com.sinata.xqmuse.ui.mine
 
import android.os.CountDownTimer
import cn.sinata.xldutils.utils.SPUtils
import cn.sinata.xldutils.utils.isValidPhone
import cn.sinata.xldutils.utils.myToast
import com.sinata.xqmuse.R
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_change_phone.*
 
import org.jetbrains.anko.sdk27.coroutines.onClick
import org.jetbrains.anko.startActivity
 
class ChangePhoneActivity:TransparentStatusBarActivity() {
    override fun setContentView() = R.layout.activity_change_phone
    private lateinit var timer: CountDownTimer
 
    override fun initClick() {
        tv_code.onClick {
            val phone = et_phone.text.toString()
            if (!phone.isValidPhone())
                myToast("请输入正确的手机号")
            else{
                tv_code.isEnabled = false
                HttpManager.getCode(phone,5).request(this@ChangePhoneActivity,success = { _, _->
                    timer.start()
                }){_,_->
                    tv_code.isEnabled = true
                }
            }
        }
 
        tv_action.onClick {
            val phone = et_phone.text.toString()
            if (!phone.isValidPhone()){
                myToast("请输入正确的手机号")
                return@onClick
            }
            val code = et_code.text.toString()
            if (code.length!=6){
                myToast("请输入6位验证码")
                return@onClick
            }
            HttpManager.changePhone(code, phone).request(this@ChangePhoneActivity){_,_->
                SPUtils.instance().put(Const.User.USER_PHONE,"").put(Const.User.TOKEN,"").put(Const.User.USER_ID,"")
                    .put("isHint",false)
                    .apply()
                startActivity<ChangePhoneSucActivity>()
            }
        }
    }
 
    override fun initView() {
        timer = object :CountDownTimer(60000,1000){
            override fun onFinish() {
                tv_code.isEnabled = true
                tv_code.text = "获取验证码"
            }
 
            override fun onTick(millisUntilFinished: Long) {
                tv_code.text = "${millisUntilFinished/1000}s后可重新获取"
            }
        }
    }
 
}