2016-04-27 10 views
0

Ich habe einen TextClock in meiner App. Ich möchte dem Benutzer die Option der Zeitzone geben, die er anzeigt (anstatt nur die Gerätevoreinstellung zu verwenden).TextClock setTimeZone() nicht ändern TimeZone

Ich verwende den Code

textClock.setTimeZone("PST"); 

, die gemäß der API-Dokumentation sollte die Zeitzone der Uhr ändern, was auch immer die Zeichenfolge Zeitzone-ID (in diesem Fall Pacific Daylight Time), aber die Uhr isn ist‘ t ändert sich. Interessanterweise zeigt es aber auch nicht die aktuelle Zeit. Ich bin in Großbritannien, also verwenden wir GMT + 1, und wenn ich nicht .setTimeZone() zeige, zeigt das, aber wenn ich es tue, zeigt GMT + 0 unabhängig von der Zeitzone, die ich betrete.

Antwort

0

Stellt sich heraus, dass trotz der Dokumentation sagen, dass Sie drei Buchstaben-IDs verwenden können (oder vielleicht habe ich das falsch aufgehoben), können Sie nicht.

textClock.setTimeZone("America/Los_Angeles"); 

Das funktioniert für die Einstellung auf PDT zum Beispiel.

+1

Eigentlich können Sie, hier ist die Liste der verfügbaren Zeitzonen https://gist.github.com/arpit/1035596 – electroid

+0

@electroid Diese Liste, während es eine Variable für jede Zeitzone abdeckt, immer noch nicht es Ihnen ermöglichen, Verwenden Sie standardisierte Identifikatoren wie PDT. Die Liste, die für PDT aufgeführt wird, ist "PST8PDT", das kein internationales Symbol oder eine korrekte Notation ist. Immer noch ein nützlicher Link, danke. – jskrwyk