0

こんにちは、私は Sharedpreferences に問題があります。なぜなら、彼は EditText に入力されたデータを変数に保持し、別のアクティビティでそれらを呼び出してアクションを使用したいからです。コード 1、2、および 3 のアクティビティの最後のアクティビティで、データを活用したいと考えています。

http://imageshack.us/photo/my-images/402/53l5.jpg/ - アプリケーションの写真を作成しました

1回目の活動

   SharedPreferences kalorie = PreferenceManager.getDefaultSharedPreferences(this);
       sharedPreferences.Editor editor = kalorie.edit();
        editor.putString("waga", waga.getText().toString());
        editor.putString("wiek", wiek.getText().toString());
        editor.putString("wzrost",wzrost.getText().toString());
                editor.commit();

2回目の活動

    SharedPreferences TEA = PreferenceManager.getDefaultSharedPreferences(this);
                   SharedPreferences.Editor editor1 = TEA.edit();
                   editor1.putString("trening", trening.getText().toString());
                   editor1.putString("aeroby", aeroby.getText().toString());
                   editor.commit();

このアクティビティの 3 番目のアクティビティでは、以前に入力したデータを整数のテキスト編集に利用し、それらのアクションを実行したいと考えています。

 SharedPreferences kalorie = PreferenceManager.getDefaultSharedPreferences(this);

int wagaValue = Integer.valueOf(kalorie.getString("waga", "0"));
int wiekValue = Integer.valueOf(kalorie.getString("wiek", "0"));
int wzrostValue = Integer.valueOf(kalorie.getString("wzrost", "0"));
int kcalwynik = (int) (((( wagaValue * 9.99 ) + ( wzrostValue * 6.25 )) - ( wiekValue * 4.92 ))+5);

txtWynik.setText(kcalwynik);

int redValue = Integer.valueOf(etreduk.getText().toString() );


SharedPreferences TEA = PreferenceManager.getDefaultSharedPreferences(this);

int treningValue = Integer.valueOf(TEA.getString("trening", "0"));
int aerobyValue = Integer.valueOf(TEA.getString("aeroby", "0"));

int kcalwynik1 = treningValue+aerobyValue;


int redukcja = kcalwynik + kcalwynik1;
int red1 = redukcja - redValue;

 String returnMsg = red1 + " kcal";
 txtWynik1.setText(returnMsg);

メニューがポップアップしたら、アクティビティを選択します 3 つの偏差プログラムが停止しました

あなたの修正と助けに感謝します

1 つのアクティビティ (カロリー - 英語のカロリー) と 2 番目のアクティビティ (TEA) は、レイアウトの EditText フィールドによってユーザーからデータを取得するアクティビティであり、1 つのアクティビティから 1 つのレイアウトに、これら 2 つのアクティビティの最後に取得したデータをいくつかの数学演算を実行する 3 つのアクティビティと TextView が結果を表示します。

TEA の 2 つのアクティビティには、変数 x の選択方法に応じてまだラジオボタンがありましたが、共有設定のラジオボタンを保存する方法がわかりません。

4

1 に答える 1

0

@Rajeevがすべての設定を処理できる単一のクラスを書くことができると提案したので、これが私のsharedPrefクラスです。関連コード。

SharedPref クラス

于 2013-07-11T11:20:39.290 に答える