私は Android アプリに取り組んでおり、アプリは男性用と女性用の 2 つに分かれています。ユーザーは、アクティビティのどの部分を公開するかを選択します。例えば、ユーザーが男性の場合は男性のパートを選択し、女性の場合は女性のボタンをクリックすると女性用のページが表示されます。
ユーザーの迷惑にならないように、チェック ボックスをオンにして、次回は自分の選択を記憶するようにしました。ごくありふれたこと...
これに共有設定を使用しようとしましたが、うまくいきません。アプリを開くたびに質問されます。コードは次のとおりです。
質問するアクティビティ
View checkBoxView = View.inflate(this, R.layout.activity_menu, null);
CheckBox checkBox = (CheckBox) checkBoxView.findViewById(R.id.checkbox);
checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
SharedPreferences.Editor prefEditor = getPreferences(MODE_PRIVATE).edit();
prefEditor.putString("Remember", "Checked");
prefEditor.commit();
}
}
});
質問をするか、選択したアクティビティを開く前に決定するスプラッシュ アクティビティ
SharedPreferences sp = getPreferences(MODE_PRIVATE);
String str1 = sp.getString("Remember", "");
String str2 = sp.getString("Hacc", "");
if (str1 == "") {
Intent menuIntent = new Intent(
"com.uygulama.hacc.MenuActivity");
startActivity(menuIntent);
}
else{
if(str2 == "Hacc" ){
Intent mainIntent = new Intent(
"com.uygulama.hacc.HaccActivity");
startActivity(mainIntent);
}
else{
Intent mainIntent = new Intent(
"com.uygulama.hacc.UmreActivity");
startActivity(mainIntent);
}
}
私はAndroidが初めてなので、助けていただければ幸いです。