繁体   English   中英

timepicker和SystemClock.elapsedRealtime();的奇数值

[英]Odd values with timepicker and SystemClock.elapsedRealtime();

我的应用程序中有一个TimePicker ,可以选择播放歌曲的时间,使用CountDownTimer im时无法获得剩余时间以正确显示,因此,问题几乎都发生在毫秒内我认为即时转换正确,但我在屏幕上看到的只是完全错误的值。

当我只使用3600000(1hour)作为第一个参数进行测试CountDownTimer时,一切正常,但是当我将timepicker设置为0并将minutes设置为1时,就像我只希望播放1分钟一样,它将显示12小时,看起来像是随机的分钟和秒位中的值。 tp.getCurrentHour(); 当设置为零和tp.getCurrentMinute();时返回零tp.getCurrentMinute(); 返回预期的结果,似乎这部分正在发生什么,无法弄清楚是什么:

游戏时间=(小时*(60 * 60 * 1000))+(分钟*(60 * 1000)); startime = SystemClock.elapsedRealtime();

为什么是tv2.setText("totaltest "+startime+playtime); 显示值6000046929803 ??? 这显然是错误的...

这是其余的代码:

                TimePicker tp =(TimePicker)findViewById(R.id.timePicker1);

                    public void onClick(View v) {
                                    // TODO Auto-generated method stub
                                    long hour = tp.getCurrentHour();
                                    long min = tp.getCurrentMinute();
                                    playtime = (hour * (60 * 60 * 1000)) + (min * (60 * 1000));
                                    startime = SystemClock.elapsedRealtime();
tv2.setText("totaltest "+startime+playtime);
            timer = new CountDownTimer(startime+playtime,1000){

                                @Override
                                public void onFinish() {
                                    tv.setText("finished");
                                }

                                //@SuppressLint("ParserError")
                                @Override
                                public void onTick(long millisUntilFinished) {

                                    String display = DateUtils.formatElapsedTime(millisUntilFinished/1000);

                                    tv.setText(display);

                                }

                            }.start();

尝试:

String display = DateUtils.formatElapsedTime(millisUntilFinished/1000);

那为您做了转换。

和:

timer = new CountDownTimer(playtime,1000){ 

因为CounterDownTimer预期要运行的毫秒数。

暂无
暂无

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

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM