我已经构建了一个表盘,它以两种不同的方式显示时间。表盘具有当前时区的 12 小时格式和 GMT 的 24 小时格式。默认情况下,表盘仅显示当前时区,这意味着我的 GMT 时针实际上仅以 24 小时格式指示当前时区的时间。如何让手表同时显示多个时区?
问问题
1236 次
2 回答
0
您可以创建 2 个具有不同时区的日历对象,然后使用此对象:
Calendar germanyTime = new GregorianCalendar(TimeZone.getDefault());//your timezone
Calendar germanyTime = new GregorianCalendar(TimeZone.getTimeZone("GMT+0"));
于 2015-04-06T20:08:13.180 回答
0
我会给你一个例子,说明我是如何设法自动获取系统时间格式的:
// variables
boolean is24Hour = false;
DateFormat df;
Calendar cal;
// get time format
is24Hour = df.is24HourFormat(context);
...
@Override
public void onDraw(Canvas canvas, Rect bounds) {
// always get a new instance in your onDraw()
cal = Calendar.getInstance();
// get the hours
if (is24Hour) {
format = new SimpleDateFormat("H");
return Integer.valueOf(format.format(cal.getTime()));
} else {
format = new SimpleDateFormat("h");
return (Integer.valueOf(format.format(cal.getTime()));
}
}
于 2015-04-08T10:50:32.297 回答