2014-02-13 3 views
1
public void setCurrenttime() { 

    c = Calendar.getInstance(); 
    hour = c.get(Calendar.HOUR_OF_DAY); 
    min = c.get(Calendar.MINUTE); 
    String am_pm; 
    if (hour > 12) {    
     am_pm = "PM"; 
    } else { 
     am_pm = "AM"; 
    } 

    tvDisplayHour=(TextView)findViewById(R.id.hourtext); 
    tvDisplayHour.setText(hour+":"+ min + " "+ am_pm);  
} 

내 문제는 내 에뮬레이터에서 현재 시간을 설정하지 않습니다.안드로이드의 현재 시간 설정

그 코드에 무슨 문제가 있습니까? 제발 안드로이드에 새로운 사람이되도록 도와주세요.

덕분에 나는 12 시간 형식으로 변환 할 수있는 방법이 코드에서


public void setCurrenttime() { 

    c = Calendar.getInstance(); 
    hour = c.get(Calendar.HOUR_OF_DAY); 
    min = c.get(Calendar.MINUTE); 
    String am_pm; 
    if (hour > 12) {    
     am_pm = "PM"; 
    } else { 
     am_pm = "AM"; 
    } 

    tvDisplayHour=(TextView)findViewById(R.id.hourtext); 
    tvDisplayHour.setText(hour+":"+ min + " "+ am_pm);  
} 

?

+0

시간과 분을 문자열로 변환 한 다음 s tTring to setText –

+0

@NaveedAli 그는 이미 그 일을하고 있습니다 ... –

답변

2

사용중인 코드는 시스템에서 시간을 가져 와서 시스템에 시간을 설정하지 않는 것입니다. 시스템에 시간을 설정하려면 AlarmManager 클래스를 사용해야합니다. 당신은 현재 시간을 얻을 것이다 :

Calendar c = Calendar.getInstance(); 
c.set(2014, 8, 15, 12, 34, 56); 
AlarmManager am = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE); 
am.setTime(c.getTimeInMillis()); 

은 또한 당신이

<permission android:name="android.permission.SET_TIME" 
    android:protectionLevel="signature|system" 
    android:label="@string/permlab_setTime" 
    android:description="@string/permdesc_setTime" /> 
0

이 시도하여 AndroidManifest.xml 파일에 다음과 같은 권한을 정의해야, 다음 코드 확인 -

을 당신의 요구 사항을 수정합니다 : -

public void current_time() { 

     Calendar cal = Calendar.getInstance(); 
     int hour = cal.get(Calendar.HOUR_OF_DAY); 
     int minute = cal.get(Calendar.MINUTE); 
     int am_pm = cal.get(Calendar.AM_PM); 

     TimePickerDialog mTimePicker; 
     mTimePicker = new TimePickerDialog(InformationActivity.this, 
       new TimePickerDialog.OnTimeSetListener() { 
        @Override 
        public void onTimeSet(TimePicker timePicker, 
          int selectedHour, int selectedMinute) { 

         String minutes = ""; 

         int startTimeHour = selectedHour; 
         int startTimeMinute = selectedMinute; 

         if (selectedMinute < 10) { 
          minutes = "0" + selectedMinute; 
         } else { 
          minutes = String.valueOf(selectedMinute); 
         } 

         if (selectedHour > 12) { 
          selectedHour -= 12; 

          String timeSet_in = "PM"; 
          edt_time_in.setText(selectedHour + ":" + minutes 
            + " " + timeSet_in.toString()); 
          selectedHour += 12; 

         } else if (selectedHour == 0) { 

          selectedHour += 12; 

          timeSet_in = "AM"; 
          edt_time_in.setText(selectedHour + ":" + minutes 
            + " " + timeSet_in.toString()); 
          selectedHour -= 12; 
         } else if (selectedHour == 12) { 

          timeSet_in = "PM"; 
          edt_time_in.setText(selectedHour + ":" + minutes 
            + " " + timeSet_in.toString()); 
         } else { 

          timeSet_in = "AM"; 
          edt_time_in.setText(selectedHour + ":" + minutes 
            + " " + timeSet_in.toString()); 
         } 

         arriveLoadHour = selectedHour; 
         arriveLoadMinute = selectedMinute; 

        } 
       }, hour, minute, true);// Yes 24 hour time 
     mTimePicker.setTitle("Select Time"); 
     mTimePicker.show(); 

    } 
+0

코드는 고맙지 만 내 문제는 대화 상자를 사용하지 않을 것입니다 ... 저는 단지 시간을 가져 와서 텍스트보기에 넣고 싶습니다. 시간 형식 .. @ user3243147 –

관련 문제