首页 > 解决方案 > 如何从运行时钟除以指定变量java获得百分比

问题描述

我有这个代码,其中日期选择器对话框中的变量 date3 。

    @Override
    public void onTimeSet(TimePicker timePicker, int hour2, int minute2) {
        hour2final = hour2;
        minute2final = minute2;

        Calendar c = Calendar.getInstance ();
        c.setTimeInMillis ( 0 );
        c.set ( year2final, month2final, day2final, hour2final, minute2final, 0 );
        date2 = c.getTimeInMillis ();
        difference = date2 - date1;

        Calendar c1 = Calendar.getInstance ();
        c1.setTimeInMillis ( 0 );
        c1.set ( year2final, month2final - 1, day2final, hour2final, minute2final, 0 );
        date3 = c1.getTimeInMillis ();
        difference3 = date3 - date;
        ondatecountdowntext3 ();

和我的计时器上的这段代码(作为计时器)

private void starttimercu() {

    cupti.setBase ( SystemClock.elapsedRealtime () );
    cupti.start ();
    ondatecountdowntext3 ();

    cupti.setOnChronometerTickListener ( new Chronometer.OnChronometerTickListener () {
        @Override
        public void onChronometerTick(Chronometer chronometer) {
            t1 = SystemClock.elapsedRealtime () - chronometer.getBase ();
            t2 = date3;
            percentage = t1*100/t2;
            tvp.setText ( percentage+"%" );

        }
    } );


}

t1 是计时器启动和运行的时间,t2(date3) 是计时器运行到 100% 之前的总时间(以毫秒为单位)。问题是当我尝试除以 t1(运行时间)和 t2(date3“总时间”)时,texview tvp 中的百分比没有按照我想要的方式运行。它停留在0%并且没有增加。任何人有任何解决方案?

标签: javatimepercentagechronometer

解决方案


推荐阅读