【问题标题】:getResource returns boolean instead String[]getResource 返回布尔值而不是 String[]
【发布时间】:2017-04-22 07:04:47
【问题描述】:

在 IntentService 类中,我想将一些来自 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>

【问题讨论】:

  • 请添加array.xml文件

标签: android resources android-resources getresource


【解决方案1】:
alleTermine=alleTermine.add(hausmuell)

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

你可能想要这样的东西:

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

【讨论】:

  • alleTermine = new ArrayList();还是一样,
  • android-studio 说:“hausmuell”是布尔值,而不是“alleTermine”。
猜你喜欢
  • 2020-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-14
  • 2013-01-03
  • 2012-08-08
  • 2014-03-14
相关资源
最近更新 更多