布尔值共享的首选项

时间:2018-08-01 18:48:07

标签: android sharedpreferences savestate

我想使用sharedPrefs保存一个简单的设置或更多布尔值。如果用户单击“按钮”,则应更改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);

        }
    });


}

}

1 个答案:

答案 0 :(得分:0)

val下的onCreate

添加以下行:

click= sharedPreferences.getBoolean("lockedState", false);