用户登录
用户注册

分享至

关于Spinner数据使用xml定义的array的一个细节问题

  • 作者: 鹏程缘
  • 来源: 51数据库
  • 2021-08-29

问题描述:项目中有一个spinner,是选择一个时间间隔的,单位为秒。因为是纯数值数据,所以突发奇想写了一个如下的array:

<integer-array name="interval">
    <item>10</item>
    <item>20</item>
    <item>30</item>
    <item>60</item>
    <item>120</item>
    <item>300</item>
    <item>600</item>
    <item>1200</item>
</integer-array>

然后,在xml里边直接给spinner绑定数据:

<androidx.appcompat.widget.AppCompatSpinner
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:id="@+id/spn_interval"
    android:textSize="@dimen/fs14"
    style="@style/Spinner"
    android:entries="@array/interval"/>

问题就来了,很简单的界面,跳转的时候就报空指针异常了!

AS报错信息为Attempt to invoke virtual method 'java.lang.String java.lang.Object.toString()' on a null object reference

······(此处省略一堆不想深究的信息)

并不提示是哪行代码出错,初次遇到这种问题很懵逼有没有!

后来想到这个数据格式可能不对,改成

<string-array name="interval">
    <item>10</item>
    <item>20</item>
    <item>30</item>
    <item>60</item>
    <item>120</item>
    <item>300</item>
    <item>600</item>
    <item>1200</item>
</string-array>

这样就OK了。一个小细节,浪费了我多半天时间。特此记录一下^_^

软件
前端设计
程序设计
Java相关