扩展微调项目

时间:2013-02-04 16:07:45

标签: android spinner

我目前正在Android中实现一个Spinner,并且无法获得两个与Spinner链接的数组 - 一个用于旋转器未展开的情况,另一个用于何时进行展开。

因此,当未展开时,微调器看起来像这样: Small Spinner

当它被扩展时,链接到它的数组从缩短版本的字符串变为长版本。 Expanded Spinner

我想过在旋转Spinner时更改数组,然后在取消时更改它但我认为这最终会变得混乱,或者创建一个看起来像旋转器的按钮,这会打开一个自定义ListView对话框充当自定义Spinner,但这似乎有点矫枉过正。有更简单的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以实现自己的适配器来实现此效果。覆盖getView()返回“展开”视图,getDropDownView()返回“折叠”视图。不要忘记利用convertView。

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), 0, objects) {
        @Override
        public View getDropDownView(int position, View convertView, ViewGroup parent) {
            //inflate and return the view you want to see as the non-expanded droplist
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            //inflate and return the expanded view
        }
    };