1
我已经构建了一个以两种不同方式告诉时间的表盘。手表面具有当前时区的12小时格式和GMT格式的24小时格式。默认情况下,表盘只显示当前时区,这意味着我们的GMT时针实际上只是以24小时格式指示当前时区中的时间。如何让手表同时显示多个时区?如何在Android Wear表盘上显示多个时区
我已经构建了一个以两种不同方式告诉时间的表盘。手表面具有当前时区的12小时格式和GMT格式的24小时格式。默认情况下,表盘只显示当前时区,这意味着我们的GMT时针实际上只是以24小时格式指示当前时区中的时间。如何让手表同时显示多个时区?如何在Android Wear表盘上显示多个时区
您可以创建不同的时区2个日历对象,然后使用这个对象:
Calendar germanyTime = new GregorianCalendar(TimeZone.getDefault());//your timezone
Calendar germanyTime = new GregorianCalendar(TimeZone.getTimeZone("GMT+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()));
}
}
感谢您指点我在正确的方向。我的代码应该在哪里应用? – skeete 2015-04-06 21:48:13
这段代码演示的主要思想,你可以容纳2个独立的日历对象,并从不同的时区获取时间 – x90 2015-04-07 21:11:21
我明白,但我没有主程序员,所以它对我来说有点陌生。大声笑 – skeete 2015-04-07 22:01:09