具有共享首选项的自定义切换按钮

时间:2012-08-14 15:14:14

标签: android button sharedpreferences togglebutton

我正在尝试设置自定义切换按钮,其中我使用Imagebutton和两个不同的图像来显示切换的状态。现在我可以切换图片听一下:

togglebtn = (ImageButton) findViewById(R.id.togglebtn);
        togglebtn.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                togglebtn.setImageResource(R.drawable.offbtn);
            }
        });

但我不确定如何使用sharepreferences保存用户选择的状态。我想使用一个布尔值,但我发现的所有使用布尔值的shareprefences示例都是特定于复选框而不是这样的。

如何保存切换按钮的状态?

2 个答案:

答案 0 :(得分:1)

尝试类似的东西(从头部编码)

editor = sharedPreferences.edit();

boolean b = true; 
editor.putBool("myBoolean", b);
editor.commit();

我建议您保存活动的onPause(),而不是onClick,因为我觉得它很贵。

答案 1 :(得分:0)

进一步从@Anthea关于偏好的评论,你不应该使用ImageButton。

对于布尔选项实现,有ToggleButton,CheckBox和Switch。你应该检查一下。 您也不应该以编程方式更改drawable。你可以/应该设置一个选择器可绘制的XML,按下而不是按下它,并在布局上设置它们。