带有布尔值的共享首选项

Shared Prefs with a Boolean

我想用 sharedPrefs 保存一个简单的设置或更多布尔值。如果用户点击 "button",button2 应该改变它的 alpha。但是,如果我关闭应用程序,0.25f 的 alpha 值就会消失,而 button2 将具有与之前相同的 alpha 值。我确定我的 sharedPrefs 有问题,但我不知道是什么。

我是 java 的新人。所以我希望你能帮我解决这个问题:).

感谢您的帮助!

public class MainActivity extends AppCompatActivity {

Button button, button2;
Boolean click;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    button = (Button) findViewById(R.id.button);
    button2 = (Button) findViewById(R.id.button2);

    click = false;

    final SharedPreferences sharedPreferences = getSharedPreferences("sharedPrefName", Context.MODE_PRIVATE);
    click= sharedPreferences.getBoolean("lockedState", true);

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            click = true;
            SharedPreferences.Editor editor= sharedPreferences.edit();
            editor.putBoolean("lockedState", click);
            editor.apply();

            button2.setAlpha(0.25f);

        }
    });


}

}

onCreate下这个click= sharedPreferences.getBoolean("lockedState", false);

添加这些行:

if(click)
   button2.setAlpha(0.25f);
else
   button2.setAlpha(1f);