2012-02-08 3 views
0

조금 혼란 스럽지만 의미가 있습니다. 여러분의 모든 도움 덕분에 저는 맞춤식 디지털 시계와 countdowntimer (02:30:00 카운트 다운)를 보여주는 앱을 가지고 있습니다.시스템 시간에 카운트 다운 시간 추가

어떻게 새 시간 필드에 현재 시간과 카운트 다운이 표시되도록 02:30:00을 현재 시간에 추가합니까?

감사

디제이

이 이제 내가 당신의 질문을 이해 내가 시간이 2 시간을 광고에 30 분을 상쇄 넣어 것입니다 내 디지털 시계 코드 ...

@Override 
    protected void onStart() { 
     super.onStart(); 
     timer = new Timer("DigitalClock"); 
     Calendar calendar = Calendar.getInstance(); 
     final Runnable updateTask = new Runnable() { 
      public void run() { 
       countdown.setText(getCurrentTimeString()); 
      } 
     }; 
    int msec = 999 - calendar.get(Calendar.MILLISECOND); 
    timer.scheduleAtFixedRate(new TimerTask() { 

     @Override 
     public void run() { 
      runOnUiThread(updateTask); 
     } 
    }, msec, 1000); 
    } 

    @Override 
    protected void onStop() { 
     super.onStop(); 
     timer.cancel(); 
     timer.purge(); 
     timer = null; 
    } 
    private String getCurrentTimeString() { 
     Calendar calendar = Calendar.getInstance(); 
     int hour = calendar.get(Calendar.HOUR_OF_DAY); 
     int minute = calendar.get(Calendar.MINUTE); 
//  int second = calendar.get(Calendar.SECOND); 
     return String.format("%02d:%02d", hour, minute); 
    } 

답변

0

입니다 : p, 그 일을 할 수있는 유일한 방법은 DigitalClock을 다시 구현하는 것입니다. its source code을 가지고 시간과 분에 오프셋을 추가하여 재생하십시오.

UPDATE :

내가 무엇을 할 것은 그 코드를 가지고 변경이 일부입니다 밀리 초

mTicker = new Runnable() { 
      public void run() { 
       if (mTickerStopped) return; 
       mCalendar.setTimeInMillis(System.currentTimeMillis()); 
       setText(DateFormat.format(mFormat, mCalendar)); 
       invalidate(); 
       long now = SystemClock.uptimeMillis(); 
       long next = now + (1000 - now % 1000); 
       mHandler.postAtTime(mTicker, next); 
      } 
     }; 
    mTicker.run(); 

변환 2시 30분 0초을하고 지금 추가 :

long now = SystemClock.uptimeMillis() + offset; 
+0

안녕하세요, Countdowntimer를 사용하여 앱 카운트 다운을 2 시간 30 분에서 자동으로 반복했지만, 내가 보여주고 싶은 것은 2 시간 30 분이 추가 된 시스템 시계입니다. 그래서 기본적으로 미래의 일 countdwontime이 끝날 때마다 업데이트됩니다. – Djorn

+0

죄송합니다. 처음에는 질문을받지 못했습니다. 내 업데이트를 한번보세요. –

+0

아, 어디서 볼 건지, 내가 사용하고있는 시계 코드가 내 필요에 맞게 수정되었지만 코드가 희박 해 00:00:00에 대한 참조가 있었고 시스템 시간이 추가되었습니다. 02:30:00으로 변경하면이 코드에 내 코드가 표시되지 않을 수 있습니다. – Djorn