2017-05-10 9 views
0

私のtextviewの値をonstoponpauseに保存します。しかしtextviewにある値がdoubleで、put putをput intの代わりに使用するには

doubleputintを鋳造またはそれのために何か他のものを使用することができますどのようにこれは私がこの問題を解決することができますどのように私のコード のですか?

 @Override 
     protected void onStop() 
     { 
      super.onStop(); 
      savedValues.edit().putInt("price", (double)price).apply(); 
     } 
+3

[SharedPreferencesを2つ入れることができません]の複製が可能です(http://stackoverflow.com/questions/16319237/cant-put-double-sharedpreferences) – Submersed

+0

http://stackoverflow.com/a/28309536/2308683 –

+0

@クリケット_007ありがとうございました:) –

答えて

0

精度を失うことはキリング問題であるならば、ダブル

Double.parseDouble(myValueAsString); 
にそれを解析し、その後方法 putString

putString (String key, String value) 

呼び出すことにより、Stringとしてという保存考えるとfloatを格納してみたが

+0

@Override protected void onStop() { super.onStop(); savedValues.edit()putInt( "価格"、Double.parseDouble(myValueAsString);.適用されます();?このような } –

+0

いや、putStringは方法です... –

+0

いや、まだハズレ –

0

試してみる

savedValues.edit().putString("price",Double.parseDouble(price)).apply(); 
+0

動作しません。私はそれを試してみました –

+0

parseDoubleは 'putString'で使用できないdoubleを返します –

+1

ダブルはjava.longには適用されませんDouble –