如何在Android磨损表面上显示多个时区

时间:2015-04-03 00:31:43

标签: android watch-face-api

我制作了一个表面,以两种不同的方式讲述时间。表面的当前时区为12小时格式,GMT为24小时格式。默认情况下,表盘仅显示当前时区,这意味着GMT的时针实际上仅以24小时格式指示当前时区的时间。如何让手表同时显示多个时区?

2 个答案:

答案 0 :(得分:0)

您可以使用不同的时区创建2个日历对象,然后使用此对象:

Calendar germanyTime = new GregorianCalendar(TimeZone.getDefault());//your timezone
Calendar germanyTime = new GregorianCalendar(TimeZone.getTimeZone("GMT+0"));

答案 1 :(得分: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()));
        }
     }