2017-01-31 25 views
0

こんにちは、私は質問があります。 私は2つのオプションがあるボタンを持っています。チェックされていて、女の子はチェックされていません。男の子も同じです。私の断片では、1つを選択してSharedPreferencesに保存する必要があります。ボタンをSharedPreferencesにイメージして保存する方法

private void setSexButtons() { 

    sexButtonBoy.setOnClickListener(view -> { 
     sexButtonBoy.setSelected(true); 
     sexButtonBoy.setScaleX(1.4f); 
     sexButtonBoy.setScaleX(1.4f); 
     sexButtonGirl.setSelected(false); 
     sexButtonGirl.setScaleY(1.0f); 
     sexButtonGirl.setScaleX(1.0f); 
     Settings.setSelectedIem(true); 

    }); 

    sexButtonGirl.setOnClickListener(view -> { 
     sexButtonBoy.setSelected(false); 
     sexButtonGirl.setSelected(true); 
     sexButtonGirl.setScaleX(1.4f); 
     sexButtonGirl.setScaleX(1.4f); 
     sexButtonBoy.setScaleY(1.0f); 
     sexButtonBoy.setScaleX(1.0f); 
     Settings.setSelectedIem(true); 
    }); 
} 

と私はまた、保存する方法を持っている - しかし、私は

public static void setSelectedIem(boolean selectedIem) { 
    getPreferences().edit() 
      .putBoolean(SELECTED_SEX, selectedIem) 
      .apply(); 
} 

private static final String SELECTED_SEX = "selectedSex"; 

は私にどんなアドバイスを与えてください、私は動作しない。このbecouse悪い何かを考える:

私は、configureボタンのためにこれを持っていますどのようにこれを行うには良い。

privated SharedPreferences sharedPreferences; 

とのonCreate

sharedPreferences = getSharedPreferences("me.fast.app", MODE_PRIVATE); 

にし、ここでの主な方法です::私はここにそれを逃す

申し訳ありませんが、それである

private static SharedPreferences getPreferences() { 
    return ApplicationFast.sharedPreferences; 
} 

新しい方法を更新しました

public static boolean isSelectedItem(){ 
     return getPreferences().getBoolean(SELECTED_SEX, false); 
    } 
+0

あなたは 'getPreferences'メソッドのコードを投稿することができますか? –

+0

返信ありがとう、メインの投稿を編集しました – Rodriquez

+0

が完全に編集されました – Rodriquez

答えて

0

あなたの問題はブール値を保存していると思います。なぜなら、両方の性別で「真」を保存しているからです。

あなたはこれを行う必要があります。その後、

private void setSexButtons() { 
    //If you want to recover the settings do this: 
    sexButtonBoy.setSelected(Settings.isSelected()); 
    sexButtonGirl.setSelected(!Settings.isSelected()); 

    sexButtonBoy.setOnClickListener(view -> { 
     sexButtonBoy.setSelected(true); 
     sexButtonBoy.setScaleX(1.4f); 
     sexButtonBoy.setScaleX(1.4f); 
     sexButtonGirl.setSelected(false); 
     sexButtonGirl.setScaleY(1.0f); 
     sexButtonGirl.setScaleX(1.0f); 
     Settings.setSelectedIem(true); 

    }); 

    sexButtonGirl.setOnClickListener(view -> { 
     sexButtonBoy.setSelected(false); 
     sexButtonGirl.setSelected(true); 
     sexButtonGirl.setScaleX(1.4f); 
     sexButtonGirl.setScaleX(1.4f); 
     sexButtonBoy.setScaleY(1.0f); 
     sexButtonBoy.setScaleX(1.0f); 
     Settings.setSelectedIem(false); 
    }); 

} 

とを:

public static void setSelectedIem(boolean selectedIem) { 
    getPreferences().edit() 
      .putBoolean(IS_BOY, selectedIem) 
      .apply(); 
} 

private static final String IS_BOY = "isboy"; 
関連する問題