我不知道该怎么做,需要一些建议。我的应用目前使用的是设备的时间,而不是"正确的时间"。有什么方法可以显示"正确的时间"而不是设备的时间?例如,当用户更改设备的时间时,textview的时间将跟随新设备的时间。但是,我不希望这种情况发生。
以下是我的代码:
//start time
private void updateTextView() {
Calendar a = Calendar.getInstance();
int year = a.get(Calendar.YEAR);
int month = a.get(Calendar.MONTH) + 1;
int date = a.get(Calendar.DATE);
int hourOfDay = a.get(Calendar.HOUR_OF_DAY);
int minute = a.get(Calendar.MINUTE);
datetime_start = (TextView) findViewById(R.id.inputStartTime);
datetime_start.setText(year + "-" + month + "-" + date + " " + String.valueOf(hourOfDay) + ":" + String.valueOf(minute) + ":00");
}
如果可能,请告诉我该怎么做。我是Java Coding的初学者,目前正在为我的学校项目编写代码。谢谢。
答案 0 :(得分:1)
如果“正确”时间表示UTC时间,则需要使用UTC获取Calendar
实例,如下所示:
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
通常时间是本地化的(时区调整),因为这是通常需要的。
您可以在此处查看问题/答案以获取更多信息:How can I set a Calendar with UTC time?