【问题标题】:How to store boolean choice in Android如何在Android中存储布尔选择
【发布时间】:2020-09-06 20:35:23
【问题描述】:

我的应用中有声音开/关按钮,我正在使用布尔值运行它。但问题是用户的选择并不相同。当页面刷新时,布尔值重新开始。我想如果用户设置声音,即使他关闭并再次打开应用程序,声音也应该打开。我尝试了 SharedPreferences 但我无法让它工作。我不想仅仅为此使用 SQL。你有什么建议吗?

private boolean soundCheck = false;

soundOff.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(!soundCheck){
                    soundCheck=true;
                    v.setBackgroundResource(R.drawable.ic_soundOn);
                }else {
                    soundCheck=false;
                    v.setBackgroundResource(R.drawable.ic_mute);
                }
            }
        });

               if(soundCheck){
                    playSound.start();


                }else {
                    playSound(R.raw.silence);
                }

我对 sharedPreferences 的尝试

private boolean soundCheck;

final SharedPreferences GET        = PreferenceManager.getDefaultSharedPreferences(this);
        final SharedPreferences.Editor SET = GET.edit();

soundOff.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(!soundCheck){
                    SET.putBoolean("soundCheck",true);
                    v.setBackgroundResource(R.drawable.ic_soundOn);
                }else {
                    SET.putBoolean("soundCheck",false);
                    v.setBackgroundResource(R.drawable.ic_mute);
                }
            }
        });

【问题讨论】:

  • I tried SharedPreferences 添加您尝试过的共享首选项的代码,因为您可能最终会得到此解决方案
  • SharedPreferences 有什么问题?我猜 SharedPreferences 是最好的选择。 Stackoverflow 上的文档和答案应该可以指导和帮助您。 developer.android.com/training/data-storage/shared-preferences
  • 我无法理解我应该如何在开/关选项中设置布尔值的逻辑。我正在编辑我的问题。
  • 我没有看到你在哪里得到你在 sharedpreference 中的值。你把它放在 onClickListener 中,但你从哪里拿回来?

标签: java android audio boolean


【解决方案1】:

@JaneS.,在共享首选项中设置值后,您必须应用这些更改。喜欢:

SET.putBoolean("soundCheck",true).apply();

【讨论】:

  • 感谢编辑 hata。我是 stackoverflow 的新手。
猜你喜欢
  • 2021-12-04
  • 2012-12-31
  • 2014-07-18
  • 2019-02-10
  • 2016-06-25
  • 2013-04-09
  • 1970-01-01
  • 2010-10-25
  • 2012-03-10
相关资源
最近更新 更多