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);
在 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);