我用color.xml制作了一个包含12种不同颜色的颜色数组。
但是在我尝试提取颜色并在代码中使用它们时,数组中的所有值都将为空。我也试着使用typedarray解决方案,没有区别。怎么了?
public void testColor(){
Resources resources = App.getAppContext().getResources();
String colors[] = resources.getStringArray(R.array.backgroundcolors);
//prints null
Log.d("TAG", " " + colors[3]);
//prints 12x null
for(String x : colors){
Log.d("TAG", " " + x);
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
testColor();
}
颜色.xml
<array name="backgroundcolors">
<item>#000000</item>
<item>#373737</item>
<item>#ffffff</item>
<item>#e6e6e6</item>
<item>#EAE1D8</item>
<item>#fd79a1</item>
<item>#ff0f68</item>
<item>#E849A1</item>
<item>#F7E84E</item>
<item>#FFB732</item>
<item>#48B1E3</item>
<item>#5dd95d</item>
</array>
最佳答案
更改:
<array name="backgroundcolors">
到
<string-array name="backgroundcolors">
关于android - 来自color.xml的color-array对于所有项目均返回null。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35408420/