在android中设置当前时间

在android中设置当前时间,android,Android,我的问题是它不会在我的模拟器中设置当前时间 那代码怎么了?请帮助我,我是android新手 谢谢 在这段代码中,如何将时间转换为12小时格式?您使用的代码是从系统获取时间,而不是设置系统的时间。如果要设置系统时间,则需要使用AlarmManager类。检查以下代码 public void setCurrenttime () { c = Calendar.getInstance(); hour = c.get(Calendar.HOUR_OF_DAY); min =

我的问题是它不会在我的模拟器中设置当前时间

那代码怎么了?请帮助我,我是android新手

谢谢



在这段代码中,如何将时间转换为12小时格式?

您使用的代码是从系统获取时间,而不是设置系统的时间。如果要设置系统时间,则需要使用AlarmManager类。检查以下代码

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 );     
}
您还需要在
AndroidManifest.xml
文件中定义以下权限

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" />
public void current_time(){
Calendar cal=Calendar.getInstance();
int hour=cal.get(日历小时);
int minute=cal.get(Calendar.minute);
int am\u pm=cal.get(Calendar.am\u pm);
时间选择器Dialog mTimePicker;
mTimePicker=新时间选择器对话框(InformationActivity.this,
新的TimePickerDialog.OnTimeSetListener(){
@凌驾
公共void onTimeSet(计时器选择器计时器选择器,
int selectedHour,int selectedMinute){
字符串分钟数=”;
int STARTTIMEOUR=所选小时;
int startTimeMinute=选定的分钟数;
如果(选择分钟<10){
分钟数=“0”+所选分钟数;
}否则{
分钟=字符串.valueOf(selectedMinute);
}
如果(已选择小时>12){
选择小时-=12;
字符串timeSet_in=“PM”;
edt_time_in.setText(选择小时+“:”+分钟
+“”+timeSet_in.toString());
选择的小时数+=12;
}else if(selectedHour==0){
选择的小时数+=12;
timeSet_in=“AM”;
edt_time_in.setText(选择小时+“:”+分钟
+“”+timeSet_in.toString());
选择小时-=12;
}否则如果(selectedHour==12){
timeSet_in=“PM”;
edt_time_in.setText(选择小时+“:”+分钟
+“”+timeSet_in.toString());
}否则{
timeSet_in=“AM”;
edt_time_in.setText(选择小时+“:”+分钟
+“”+timeSet_in.toString());
}
arriveLoadHour=所选小时;
arriveLoadMinute=选择的分钟数;
}
},小时,分钟,对);//是的,24小时
setTitle(“选择时间”);
mTimePicker.show();
}

将小时和分钟转换为字符串,然后将字符串传递给setText@NaveedAli他已经在这样做了…感谢代码,但我的问题是我不会使用对话框。。我只想获取时间并将其放入文本视图中,并将其设置为12小时格式。@user3243147
<permission android:name="android.permission.SET_TIME"
    android:protectionLevel="signature|system"
    android:label="@string/permlab_setTime"
    android:description="@string/permdesc_setTime" />
 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();

    }