getResource returns 布尔值而不是 String[]

getResource returns boolean instead String[]

在 IntentService class 中,我想将 Android xml 文件中的一些数组放入 ArrayList,Android-Studio 不接受这个,但前提是我想将其添加到 ArrayList 中。 Android Studio 说它找到了布尔值而不是字符串[]。但为什么是布尔值?这是字符串[]。在另一个代码片段中,我可以毫无问题地使用从 getResources() 获得的这个 String[]。

private ArrayList<String[]> alleTermine = new ArrayList<String[]>();

private String[] hausmuell;
private String[] gelbeSaecke;
private String[] gruenAbfall;
private String[] altPapier;



public void onCreate() {
    super.onCreate();
    Resources res = getResources();
     //this makes a String[]
    hausmuell = res.getStringArray(R.array.hausmuell);
    gelbeSaecke = res.getStringArray(R.array.gelber_sack);
    gruenAbfall = res.getStringArray(R.array.gruenabfall);
    altPapier = res.getStringArray(R.array.altpapier);
    alleTermine=alleTermine.add(hausmuell)
}

xml.file 看起来像这样:

<?xml version='1.0' encoding='utf-8'?>
 <resources>
 <string-array name='hausmuell'>
 <item>1482451200000</item>
  <item>1452214800000</item>
 <item>1453424400000</item>
 <item>1454634000000</item>
 <item>1455843600000</item>

 </string-array>
 </resources>
alleTermine=alleTermine.add(hausmuell)

ArrayList#add() 方法 return 是一个布尔值,而您正试图将 return 值分配给 ArrayList。那不会编译。

你可能想要这样的东西:

alleTermine = new ArrayList<>();
alleTermine.add(hausmuell);