简体   繁体   English

如何在倒数计时器中传递秒值,我可以传递分钟但不传递秒,它总是从60开始

[英]How to pass values for seconds in countdown timer , I am able to pass minutes but not seconds , it always start from 60

Here is my method to start , i am passing minutes from the Textview , how can i pass user defined seconds to star with 这是我的开始方法,我正在从Textview中传递分钟,我如何将用户定义的秒传递给

   startbtnn.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v) {

                final CounterClass timer = new CounterClass(Integer.parseInt(timertxt11.getText().toString())*60000,1000,v);

                timer.start();
            }
        });

and Here s the class that is used 这是使用的类

       public class CounterClass extends CountDownTimer
        {

        public CounterClass(long millisInFuture, long countDownInterval,View v)
        { super(millisInFuture, countDownInterval);
        }


        @Override
        public void onFinish()
        {
//            timertxt.setText("Completed.");
        }

         @Override
        public void onTick(long millisUntilFinished)
        {
            long millis = millisUntilFinished;
            String hms1 = String.format("%02d",TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)));
            String hms2 = String.format("%02d", TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));


            System.out.println(hms1+": " +hms2);
            timertxt11.setText(hms1);
            timertxt22.setText(hms2);
        }
    }

Please help me out. 请帮帮我。

if you have two TextView(one shows mins and another shows secs) 如果您有两个TextView(一个显示分钟,另一个显示秒)

int mins = Integer.parseInt(minTextView.getText().toString());
int secs = Integer.parseInt(secTextView.getText().toString());
long totalMillis = (mins * 60 + secs) * 1000L;
new CounterClass(totalMillis, 1000L, v).start();

or if you just want one TextView 或者如果您只想要一个TextView

try {
    // "mm:ss" is just an example. define the input format yourself.
    SimpleDateFormat format = new SimpleDateFormat("mm:ss", Locale.getDefault());
    Date date = format.parse(timeTextView.getText().toString());
    new CounterClass(date.getTime(), 1000, v).start();
} catch (ParseException e) {
    // handle exception here
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我正在尝试创建一个倒计时计时器,其中包括事件的天数,小时数,分钟数和秒数? - I am trying to create a countdown timer which includes days, hours, minutes and seconds of an event? android eclipse:倒数计时器,以小时,分钟和秒为单位 - android eclipse: Countdown timer in hours, minutes and seconds 如何在几分钟和几秒钟内使用计时器 - how to use timer in minutes and seconds 转换时间,在60秒后仅显示分钟。 我试图显示分钟,然后显示秒。 - Converting time, after 60 seconds it is only displaying the minutes. I am trying to display minutes followed by seconds. 以HH显示倒数计时器:MM:SS(小时:分钟:秒) - Show Countdown timer in HH:MM:SS (Hours : Minutes : Seconds) 倒数计时器android上的秒数不准确 - Seconds on Countdown timer android not accurate 我想显示从 60 到 1 的经过秒数 - I want show the elapsed seconds from 60 to 1 如何将TimePickerDialog值传递给android中的倒数计时器 - How can I pass TimePickerDialog value to countdown timer in android 以60秒/分钟的速度将Integer / String重置为0 - Reset Integer/String to 0 when at 60 seconds/minutes 在android中使用倒计时器显示天数小时分秒的倒计时问题 - Countdown issue while displaying days hours minutes seconds using count down timer in android
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM