2017-06-22 3 views
1

Ich möchte den Standort des Markers sp speichern, damit ich jedes Mal, wenn ich die App öffne, die Marker lade.android google maps location

SharedPreferences.Editor putDouble(final SharedPreferences.Editor edit, final String key, final double value) { 
    return edit.putLong(key, Double.doubleToRawLongBits(value)); 
} 

double getDouble(final SharedPreferences prefs, final String key, final double defaultValue) { 
    return Double.longBitsToDouble(prefs.getLong(key, Double.doubleToLongBits(defaultValue))); 
} 

der Wert aus dem Getter zurückgegeben von meinem Standort wie 200km

Antwort

1

innerhalb der getDouble Methode weit entfernt diffrent ist, müssen Sie Double.longBitsToDouble verwenden, um es in einen Double zu konvertieren zurück, glaube ich.

double getDouble(final SharedPreferences prefs, final String key, final double defaultValue) { 
     return Double.longBitsToDouble(prefs.getLong(key, 
         Double. longBitsToDouble(defaultValue))); 
} 
+0

Können Sie mir Beispiel –

+0

'Doppel getDouble (endgültige SharedPreferences Prefs, final String Schlüssel, final Doppeldefault) { return Double.longBitsToDouble (prefs.getLong (Schlüssel, Doppel. LongBitsToDouble (Standardwert))); } ' – sofakingforever

0

Double.longBitsToDouble() Willen Gibt den doppelten Wert zu einer gegebenen Bit-Darstellung entspricht. so versuchen Sie diese

double getDouble(final SharedPreferences prefs, final String key, final double defaultValue) 
{ 
return Double.longBitsToDouble(prefs.getLong(key, Double.longBitsToDouble(defaultValue))); 
} 
+0

@Sanoop überprüfen aktualisiert ans es wird ans Ihre Frage mein Freund –