Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android java保存颜色_Java_Android_Click_Save - Fatal编程技术网

Android java保存颜色

Android java保存颜色,java,android,click,save,Java,Android,Click,Save,我有一个按钮,它有一个默认的颜色,当我点击它时,它会变成黄色。代码看起来像这样 public void onClick(View v) { if (but[0] == 1) { ((Button) android.findViewById(R.id.pageOne)).setBackground(getResources().getDrawable(R.drawable.border_white)); } else {

我有一个按钮,它有一个默认的颜色,当我点击它时,它会变成黄色。代码看起来像这样

  public void onClick(View v) {
        if (but[0] == 1) {
            ((Button) android.findViewById(R.id.pageOne)).setBackground(getResources().getDrawable(R.drawable.border_white));
        } else {
            ((Button) android.findViewById(R.id.pageOne)).setBackground(getResources().getDrawable(R.drawable.border_yellow));
        }
    }

现在我想把它保存在应用程序中。因此,当我重新启动时,按钮仍然显示为黄色,而不是默认值。如何做到这一点?

您需要使用Android的
SharedReferences
功能


您可以打开共享首选项:

 SharedPreferences sharedprefs = getSharedPreferences("yourapplicationpackage", MODE_PRIVATE);
并保存颜色:

 sharedprefs.edit().putString("buttoncolor", getResources().getDrawable(R.drawable.border_yellow)).apply();
您可以通过以下方式获得您的颜色:

Color buttoncolor= sharedprefs.getString("buttoncolor, "defaultcoloryoulike");

祝您好运

您可以使用共享首选项存储值,以便下次打开应用程序时可以获得最后选择的颜色。非常感谢。那么,最后一步是否会自动检查更改的颜色?您对“buttoncolor”的解释是什么?最后一步会在共享首选项中获取最后插入的颜色。“buttoncolor”是用于将其保存在共享首选项中的标记。您可以使用另一个标记,但要获得保存的颜色,您需要使用相同的标记。请确保在“defaultcoloryoulike”中使用getResources()。getDrawable(R.drawable.border_yellow))。apply()?