如何通过SharedPreference选项更改EditText的背景图像?

时间:2015-05-29 13:57:01

标签: android image android-edittext

我一直在努力尝试使用首选项选项更改EditText的背景图像。我不知道为什么它不起作用。这是我的代码:

preferences = getSharedPreferences("prefBorder", 0);
String value = preferences.getString("Solid", null);

if (value.equals("Solid")) {
    editText.setBackgroundResource(R.drawable.border);
    // the key does not exist
} else {
    // handle the value
    editText.setBackgroundResource(R.drawable.borderpkmnblue);
}

以下是我对边框的偏好值:

<string-array name="Border">
    <item name="Solid">Solid</item>
    <item name="PokemonBlue">Pokemon Blue</item>

</string-array>
<string-array name="borderValues">
    <item name="Solid">drawable/border.png</item>
    <item name="PokemonBlue">drawable/borderpkmnblue.png</item>

</string-array>

2 个答案:

答案 0 :(得分:0)

尝试使用setBackgroundDrawable()方法

editText.setBackgroundDrawable(R.drawable.border);

答案 1 :(得分:0)

尝试使用BackgroundResource函数:

editText.setBackgroundResource(android.R.drawable.edit_text);

drawable应该是一个9补丁文件。