Я загружаю метод одним нажатием кнопки, но это не занимает время, которое я дал perfrom action.can, кто-нибудь скажет мне, что я делаю неправильно.Как загрузить метод через некоторое время нажатием кнопки?
Это по нажатию кнопки: -
resand_otp_new.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (VerificationCount < 2) {
if(br != null)
{
br.show();
}
checkotp.setText("");
HashMap<String, String> formData = new HashMap<>();
formData.put("Phone", Phone);
webServiceHandler.requestToServer((getResources().getString(R.string.api_end_point)) + "SendOTPForgetPassword", WebService.ADDLIST, formData, true);
VerificationCount++;
timer.start();
mTvCountDown.setText("00:00:30");
resand_otp_new.setVisibility(View.INVISIBLE);
verifyResendOtp();
} else {
Toast.makeText(v.getContext(), "You Have Used Maximum Chances of OTP !", Toast.LENGTH_SHORT).show();
}
}
});
загружает метод verifyResendOtp() для 30 second.but это не займет время, выполнить немедленно.
Это мой метод: -
private void verifyResendOtp() {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
if (generalUtilities.isConnected()) {
SharedPreferences sharedPreferences = getApplicationContext().getSharedPreferences(IncominMsg.KEY_PREFERNCE, MODE_PRIVATE);
otpnumber = sharedPreferences.getString(IncominMsg.KEY_OTP, "");
Log.e("otpnumberverifiy....", otpnumber);
checkotp.setText(otpnumber);
HashMap<String, String> formData = new HashMap<>();
formData.put("Phone", Phone);
formData.put("OTP", checkotp.getText().toString().trim());
webServiceHandler.requestToServer((getResources().getString(R.string.api_end_point)) + "CheckOTPForgetPassword", WebService.FORGET_PASSWORD, formData, true);
} else {
generalUtilities.showAlertDialog("HEY USER", "Please Connect To the Internet", getApplicationContext());
}
}
}, 30000);
}
Одна вещь, чтобы отметить здесь, что каждый щелчок кнопки создаст новый экземпляр 'Handler' и планировать замедленное действие, следовательно, это подход немного испорчен. – Shaishav