使用最新的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" />
然而,在片段的onCreateView
中调用spinner.getChildCount()
会返回0
。微调器适配器由值填充,微调器在应用程序中运行良好,因此必须在以后的某个时间填充子视图。
我什么时候才能获得微调器的子视图,或者如果我做错了该怎么做
在阅读了更多文档后,我意识到微调器不会直接存储其子视图。相反,必须通过SpinnerAdapter
的getDropDownView
方法来访问它们。
例如。
spinner.getAdapter().getDropDownView(id, null, null);