Java android string.format未使用计时器正确格式化

Java android string.format未使用计时器正确格式化,java,android,string.format,Java,Android,String.format,我有一个显示计时器的文本视图,我使用string.format,因此秒数将始终使用两位数:0:00 但是当我点击10分钟(分钟也上升到两位数)时,秒只使用一位数而不是两位数 timerRunnable: Runnable timerRunnable = new Runnable() { @Override public void run() { millis = System.currentTimeMillis() - startTime;

我有一个显示计时器的文本视图,我使用string.format,因此秒数将始终使用两位数:0:00

但是当我点击10分钟(分钟也上升到两位数)时,秒只使用一位数而不是两位数

timerRunnable:

Runnable timerRunnable = new Runnable() {

    @Override
    public void run() {


        millis = System.currentTimeMillis() - startTime;

        aSeconds = (int) (millis / 1000) + paSeconds;


        seconds = (int) (millis / 1000) + pSeconds;
        minutes = seconds / 60 + pMinutes;
        seconds = seconds % 60;



        timerTextView.setText(String.format("%d:%02d", minutes, seconds));

        if(aSeconds == delay){

            Toast.makeText(getApplicationContext(), "Drink",
                    Toast.LENGTH_LONG).show();

            delay += delay;
            count += 1;

            Log.d("MainActivity", "" + count);

        }

        timerHandler.postDelayed(this, 1000);


    }
};

我很抱歉,问题是我将String.format设置为基本上只包含3位数字的组合,但是我找不到解决问题的聪明方法,你是否尝试了if..else

if (minute >=10 && minute<=59)
   timerTextView.setText(String.format("02%d:%02d", minutes, seconds));

else       
   timerTextView.setText(String.format("2%d:%02d", minutes, seconds));

如果(分钟>=10&&minute解决方案只是在计时器达到10分钟时将我的文本视图变小,它就不会显示在屏幕上。

可能是我不明白,但是为什么不把timerTextView.setText(分钟+”:“+秒)?(如果需要添加前导零)因此,当秒不是两位数时,第二位数将自动替换为0。有更好的方法吗?好的,我刚刚尝试使用if方法设置它,将在10分钟后报告:)秒是我手动暂停的方式。当用户按下pause(暂停)按钮时,秒数将被指定为秒数,而当恢复时,秒数将等于过去的秒数。