| | |
| | | package com.duqing.missions.ui.login.view; |
| | | |
| | | import android.os.CountDownTimer; |
| | | import android.util.Patterns; |
| | | |
| | | import androidx.lifecycle.LiveData; |
| | |
| | | private MutableLiveData<LoginFormState> loginFormState = new MutableLiveData<>(); |
| | | private MutableLiveData<LoginResult> loginResult = new MutableLiveData<>(); |
| | | private LoginRepository loginRepository; |
| | | private MutableLiveData<Long> countDown = new MutableLiveData<>(); |
| | | private CountDownTimer timer; |
| | | |
| | | LoginViewModel(LoginRepository loginRepository) { |
| | | this.loginRepository = loginRepository; |
| | |
| | | private boolean isPasswordValid(String password) { |
| | | return password != null && password.trim().length() > 5; |
| | | } |
| | | } |
| | | |
| | | public MutableLiveData<Long> getCountDown() { |
| | | return countDown; |
| | | } |
| | | |
| | | /** |
| | | * 启动倒计时 |
| | | * @param consumedTime |
| | | */ |
| | | public void startCountDown(long consumedTime){ |
| | | //倒计时 |
| | | timer = new CountDownTimer(60 * 1000-consumedTime, 1000) { |
| | | |
| | | @Override |
| | | public void onTick(long l) { |
| | | countDown.postValue(l / 1000); |
| | | } |
| | | |
| | | @Override |
| | | public void onFinish() { |
| | | countDown.setValue(0l); |
| | | } |
| | | }; |
| | | timer.start(); |
| | | } |
| | | |
| | | |
| | | } |