在日历安卓中设置日期

满堂花醉三千客,一剑霜寒十四州。这篇文章主要讲述在日历安卓中设置日期相关的知识,希望能为你提供帮助。
【在日历安卓中设置日期】我不是常见的android程序员,也不太明白为什么会这样:

Calendar c = Calendar.getInstance(); c.set(Calendar.YEAR, anio); c.set(Calendar.MONTH, mes); c.set(Calendar.DAY_OF_MONTH, dia); c.set(Calendar.HOUR, hora); c.set(Calendar.MINUTE, minuto); c.set(Calendar.SECOND, 0); c.set(Calendar.MILLISECOND, 0); Log.i("ET", "Day: " +dia ); Log.i("ET", "CalDAy: " +c.get(Calendar.DAY_OF_MONTH)); SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy hh:mm"); Log.i("ETCalendar", "Tactual "+ formatter.format(c.getTimeInMillis())); return c.getTimeInMillis();

这是LogCat:
I/ET(27819): Day: 16 11-16 19:13:38.656: I/ET(27819): CalDAy: 17 11-16 19:13:38.656: I/ETCalendar(27819): 4Tactual 17/11/2013 07:13

想到一个可能的解决方案是:
c.set(Calendar.DAY_OF_MONTH, dia - 1);

但那会有用吗?
谢谢!
答案问题是HOUR用于定义12小时格式的小时。
更改您的代码:
calendar.set(Calendar.HOUR, hour);

至:
calendar.set(Calendar.HOUR_OF_DAY, hour);


    推荐阅读