繁体   English   中英

Android Studio 构建错误 - 原因:startElement.getAttributeByName(QName("name")) 不得为 null

[英]Android Studio error in build - Cause: startElement.getAttributeByName(QName("name")) must not be null

我想创建一个微调器小部件,并将其添加到string.xml

    <string-array name="options">
        <item>All Tasks</item>
        <item>Today's Tasks</item>
        <item>Tomorrow's Tasks</item>
        <item>Archived Tasks</item>
    </string-array>

我改编了它:

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
                R.array.options, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        spinner.setAdapter(adapter);

我得到了一个构建错误:

Cause: startElement.getAttributeByName(QName("name")) must not be null

我该如何解决这个问题?

在 String.xml

将“您输入的字符串”替换为您输入的字符串

或者干脆删除''这些

xml 中不允许使用撇号(') 等特殊字符直接使用可以使用转义序列来获得所需的结果。

替换:Today's by Today \'s

在撇号 ' 之前使用 \ 反斜杠符号

尝试更换:

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
            R.array.options, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinner.setAdapter(adapter);

经过:

final String options = getResources().getStringArray(R.array.options);
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, 
android.R.layout.simple_spinner_dropdown_item, options);
spinner.setAdapter(adapter);

请让我知道这是否有效。 谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM