2016-08-08 16 views
0

In NativeScript gibt es den TimePicker, der eine Zeit anzeigt, aber im 12-Stunden-Format. Ich habe ein Problem, weil in meiner Datenbank alle meine Zeiten in der Zeichenkette (im Format "23:59") gespeichert werden.Wie ändere ich TimePicker in NativeScript, um die Uhrzeit im 24-Stunden-Format anzuzeigen?

I can eingestellte Stunde, z.B. 14.

Ich habe eine Idee, String mit split(':') zu konvertieren und Zeitraum AM zu PM ändern, aber ich kann keine nützliche Methode, um das zu tun. Bitte, helfen Sie.

+0

Ich denke, die Timepicker sogar gibt nicht AM oder PM zurück, wenn Sie die Stundeneigenschaft verwenden –

Antwort

0

Sie können die nativen APIs zum Festlegen des 24-Stunden-Formats verwenden. Timepicker in NativeScript verwendet UIDatePicker in iOS und android.widget.TimePicker in Android

page.js

"use strict"; 
    var application = require("application"); 
    function onLoaded(args) { 
     var page = args.object; 
     var tPicker = page.getViewById("tPicker"); 
     if (application.android) { 
      tPicker.android.setIs24HourView(java.lang.Boolean.TRUE); 
      tPicker.hour = 23; 
      tPicker.minute = 59; 
     } 
     else if (application.ios) { 
      // a bit hacky solution 
      // important set the country not the language for locale 
      var local = NSLocale.alloc().initWithLocaleIdentifier("NL"); 
      tPicker.ios.locale = local; 
      tPicker.hour = 23; 
      tPicker.minute = 59; 
     } 
    } 
    exports.onLoaded = onLoaded; 

page.xml

<TimePicker id="tPicker"></TimePicker> 
+0

Ich schreibe das in TypeScript um und leider besteht das Problem noch. "Kann Property Android von undefined nicht lesen, aber danke. –

+0

Konnten Sie Ihren Zeitnehmer nach ID bekommen .. die ID sollte in Ihrer XML-Datei vorhanden sein. Das Codebeispiel, das ich gepostet habe, ist getestet und funktioniert auf beiden Plattformen. Beachten Sie auch, dass ich ein Beispiel für ein onLoaded-Ereignis gebe.

+0

Wenn Sie NativeScript mit TS entwickeln, benötigen Sie auch den Verweis auf die Decaration-Dateien für den Zugriff auf die nativen APIs Dieser Thread http://stackoverflow.com/questions/37523071/how-can-i-access-native-api-in-nativescript-when-i-use-typescript/37524018#37524018 –

Verwandte Themen