为什么Spinner.getChildAt返回null?

时间:2015-11-12 09:08:17

标签: android android-spinner

我在我的一个片段中使用Spinner。当我从backstack转到这个片段时(使用后退按钮)它给了我一个NullPointerException

这是一些代码

  

填充微调器:

SpinnerData data = new SpinnerData(0, getString(R.string.auTypeLabel));
        mAdapter.add(data);

        data = new SpinnerData(AU_STANDART_TYPE, getString(R.string.auTypeStandart));
        mAdapter.add(data);

        data = new SpinnerData(AU_FIXED_TYPE, getString(R.string.auTypeFixed));
        mAdapter.add(data);

        data = new SpinnerData(AU_REVERSE_TYPE, getString(R.string.auTypeReverse));
        mAdapter.add(data);

        mAuTypeSpinnerLayout.getSpinner().setAdapter(mAdapter);
  

onActivityCreated部分:

mSpinner.getChildAt(0))getTextSize();

这给了我以下内容:

mSpinner不为空

mSpinner.getCount()是4

mSpinner.getChildAt(0)null

也许我应该在另一部分调用getChildAt方法?

1 个答案:

答案 0 :(得分:2)

因为getChildCount()是0 - > mSpinner.getChildAt(0)返回null

你可以试试这个:

if (mSpinner.getChildCount() > 0) {
   ((TextView) mSpinner.getChildAt(0)).getTextSize();
}