以编程方式修改android Spinner子视图

时间:2014-04-11 17:02:26

标签: android android-fragments android-spinner

使用最新的Android API(在本文发表时为19篇),我正在尝试将基本Spinner的各种孩子作为TextViews。

在我的片段的onCreateView方法中,我得到了对微调器的引用:

final Spinner spinner = (Spinner) view.findViewById(R.id.icon_spinner);

(在片段中看起来像这样):

<Spinner android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:id="@+id/icon_spinner"
         android:layout_below="@+id/button_check_in"
         android:layout_centerHorizontal="true"
         android:layout_marginTop="32dp"
         android:spinnerMode="dialog"
         android:entries="@array/marker_names" />

但是,在片段spinner.getChildCount()中调用onCreateView会返回0。微调器适配器填充了值,并且微调器在应用程序中正常工作,因此必须在以后填充子视图。

我什么时候可以获得微调器的子视图,或者如果我出错了怎么办呢?

1 个答案:

答案 0 :(得分:0)

在阅读完文档之后,我意识到微调器不会直接存储他们的子视图。相反,必须通过SpinnerAdapter的{​​{1}}方法访问它们。

例如

getDropDownView