getResource返回boolean而不是String []

时间:2016-12-07 11:02:12

标签: android resources android-resources getresource

在IntentService类中,我想将一些来自Android xml文件的数组放在ArrayList中,Android-Studio不接受这个,但只有当我想将它添加到ArrayList中时。 Android Studio说它发现了一个布尔而不是String []。但为什么布尔?这是String []。在另一个Code-Fragment中,我可以使用我从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>

1 个答案:

答案 0 :(得分:1)

alleTermine=alleTermine.add(hausmuell)

ArrayList#add()方法返回一个布尔值,并且您尝试将返回值分配给ArrayList。那不会编译。

您可能需要以下内容:

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