布局
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_marginTop="15dp" android:orientation="horizontal"
>
<EditText android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_weight="1" android:hint="请输入手机号"
android:layout_marginLeft="15sp"
android:id="@+id/et_user_phone"
/>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="获取验证码" android:background="#2196F3"
android:textColor="#FFF" android:textSize="15sp"
android:layout_marginRight="15sp"
android:id="@+id/send_message"
/>
</LinearLayout>
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_marginTop="15dp" android:orientation="horizontal"
>
<EditText android:layout_width="100dp" android:layout_height="wrap_content"
android:hint="验证码"
android:layout_marginLeft="15sp"
android:id="@+id/et_user_code"
/>
</LinearLayout>
Handler
internal var mHandler: Handler = object : Handler() {
override fun handleMessage(msg: Message) {
super.handleMessage(msg)
when(msg.what){
100 -> send_message.text= "剩余时间(${time})秒"
200 -> {
send_message.isEnabled=true
send_message.text = "点击重发"
time=60
}
}
}
}
发送
send_message.isEnabled= false
Thread(cutTask()).start()
var time=60
inner class cutTask(): Runnable {
override fun run() {
while (time>0){
mHandler.sendEmptyMessage(100)
SystemClock.sleep(999)
time--
}
mHandler.sendEmptyMessage(200)
}
}
效果