【问题标题】:Data not loading into my Spinner数据未加载到我的 Spinner
【发布时间】:2011-07-01 03:37:15
【问题描述】:

我正在尝试将一组数据加载到 Spinner 组件中,但它抛出了 NullPointerException。我正在使用的代码如下,看起来一切正常。

    Spinner spinner = (Spinner) findViewById(R.id.spinner);
    ArrayAdapter<?> spin_adapter = ArrayAdapter.createFromResource(
            this, R.array.letters_array, android.R.layout.simple_spinner_item);
    spin_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(spin_adapter);

字符串数组如下所示

<string-array name="letters_array">
    <item>A</item>
    <item>B</item>
    <item>C</item>
    <item>D</item>
    <item>E</item>
    <item>F</item>
    <item>G</item>
    <item>H</item>
    <item>I</item>
    <item>J</item>
    <item>K</item>
    <item>L</item>
    <item>M</item>
    <item>N</item>
    <item>O</item>
    <item>P</item>
    <item>Q</item>
    <item>R</item>
    <item>S</item>
    <item>T</item>
    <item>U</item>
    <item>V</item>
    <item>W</item>
    <item>X</item>
    <item>Y</item>
    <item>Z</item>
</string-array>

Spinner 中的项目数量是否有限制,还是我做错了什么?

【问题讨论】:

  • NullPointerException 发生在哪里?你能提供一个堆栈跟踪吗?
  • @User616076:我使用上面的代码将数据放入微调器。该代码没有问题
  • 添加更多代码....NPE 可能是@R.id.spinner,如果你正在膨胀布局......或者添加你的​​异常堆栈跟踪......
  • 是的,你是对的,代码没问题,问题是(我很抱歉之前没有提到这一点)微调器设置在运行此活动的 AlertDialog 中。当我在主要活动中设置微调器时,代码可以正常工作。我现在需要解决的是,是否有可能在 AlertDialog 中有一个微调器,如果是这样,我如何告诉我的代码微调器在我的 dialoglayout.xml 而不是我的 mainactivity.xml 中。

标签: android components


【解决方案1】:

试试这个:

ArrayAdapter<CharSequence> spin_adapter = ...

您的 Array 存储在哪个 xml-File 中,它位于何处?

【讨论】:

  • 数组存储在我的 strings.xml 中,但问题似乎是我的微调器存储在我的 dialoglayout.xml 中,因为它应该在 AlertDialog 中。我不确定如何配置我的代码,以便它知道微调器在我的 dialoglayout.xml 中,而不是在我的 mainactivity.xml 中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多