Java 设定分钟后,我看到的比设定的多(倒计时)
嗨,我正在做倒计时。当我把分钟的值设置为小于一分钟时,一切都正常工作。但当我输入值例如1:05min并单击start时,我看到从1:44开始倒计时。当我把值放在大于1分钟的时候,这个问题总是出现Java 设定分钟后,我看到的比设定的多(倒计时),java,android-studio,Java,Android Studio,嗨,我正在做倒计时。当我把分钟的值设置为小于一分钟时,一切都正常工作。但当我输入值例如1:05min并单击start时,我看到从1:44开始倒计时。当我把值放在大于1分钟的时候,这个问题总是出现 //rundowy czasomierz { mCountDownTimer = new CountDownTimer(millisInput, 1000) { @Override public void onTick(long millisUntilFinis
//rundowy czasomierz {
mCountDownTimer = new CountDownTimer(millisInput, 1000) {
@Override
public void onTick(long millisUntilFinished) {
mTimeLeftInMillis = millisUntilFinished;
updateCountDownText();
tv4.setText((round_count[0]+1)+"/"+finalNum_rounds);
}
@Override
public void onFinish() {
round_count[0]++;
if (round_count[0]<finalNum_rounds){
Handler handler=new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
start();
}
}, przerwasinput);
}
MediaPlayer ring = MediaPlayer.create(Main6Activity.this, R.raw.ring1);
ring.start();
tv3.setText("Przerwa");
if (!tv1.equals("00:00")) {
tv1.setText("Koniec");
}
private void updateCountDownText(){
int hours = (int) (mTimeLeftInMillis / 1000) / 3600;
int minutes = (int) ((mTimeLeftInMillis / 1000) % 3600) / 60;
int seconds = (int) (mTimeLeftInMillis / 1000) % 60;
String timeLeftFormatted;
timeLeftFormatted = String.format(Locale.getDefault(),
"%02d:%02d", minutes, seconds);
tv1.setText(timeLeftFormatted);
}
//rundowy czasomierz{
mCountDownTimer=新的倒计时(毫秒输入,1000){
@凌驾
公共void onTick(长毫秒未完成){
mTimeLeftInMillis=毫秒直至完成;
updateCountDownText();
tv4.setText((四轮计数[0]+1)+“/”+最后一轮);
}
@凌驾
公共无效onFinish(){
四舍五入计数[0]+;
如果(round_count[0]我的最佳猜测是您的程序将1:05的输入解释为105秒。这等于1分45秒,因此您的计时器将从1:45开始倒计时
我不知道您在代码中的什么地方处理输入,所以我不知道确切的原因。我最好的猜测是,您的程序将1:05的输入解释为105秒。这等于1分45秒,因此您的计时器将从1:45开始倒计时
我看不出您在代码中的什么地方处理输入,所以我不知道到底是什么导致了这种情况