2012-04-17 2 views
0

밀리 초 단위의 데이터가 있고 CountDown 클래스를 사용하는 경우 다음과 같은 형식으로 시간을 표시합니다. 날짜 : Houres : Minutes : Seconds. 밀리 초/1000이면 전체 초가 있습니다 총 분이 등등의 카운트 다운을 표시 할 수 있지만 2dayes : 21houres : 56 분 : 00seconds로 표시 할 수있는 방법은 (밀리 초/1000)/60입니다.Android : 카운트 다운 및 형식 시간

감사

+0

나는 이것이 당신이 필요로하는 해답이라고 생각 : http://stackoverflow.com/questions/635935/how-can-i-calculate-a-time -span-in-java-and-format-the-output – xandy

답변

0

당신이 DateFormat의 또는하여 SimpleDateFormat를 사용해야합니다, 당신은 날짜에 밀리 초를 변환해야합니다, http://developer.android.com/reference/java/text/DateFormat.html

먼저 참조하십시오.

그러면 DateFormat을 사용하여 타임 스탬프를 사람이 읽을 수있는 문자열로 지정할 수 있습니다.

+0

나는 그가 가지고있는 것이 시간 범위라고 생각한다. – xandy

+0

이 형식의 날짜/mounth/year를 밀리 초로 변환하려면 어떻게해야합니까? – MimmoG

+0

Date.setYear/Date.setMonth 등을 사용할 수 있습니다. – mariotaku

1

mod (%) 연산자를 사용하여 각 부서에서 나머지를 추출해야한다고 생각합니다.

어떻게 이것에 대해 :

final long SEC_PER_DAY = 24 * 60 * 60; 
final long SEC_PER_HOUR = 60 * 60; 
final long SEC_PER_MIN = 60; 

public void onTick(long millis) { 
    long tot_sec = millis/1000; 
    long rem_days = tot_sec/SEC_PER_DAY; 
    long rem_hours = (tot_sec % SEC_PER_DAY)/SEC_PER_HOUR; 
    long rem_mins = ((tot_sec % SEC_PER_DAY) % SEC_PER_HOUR)/SEC_PER_MIN; 
    long rem_secs = ((tot_sec % SEC_PER_DAY) % SEC_PER_HOUR) % SEC_PER_MIN; 

    // and then format as you please... 
}