Android 扩展微调器项

Android 扩展微调器项,android,spinner,Android,Spinner,我目前正在安卓系统中实现一个微调器,但在获得两个与微调器链接的数组时遇到了问题——一个用于微调器未扩展时,另一个用于微调器已扩展时 因此,微调器在未展开时的外观如下所示: 当它展开时,链接到它的数组将从字符串的缩短版本更改为长版本。 我曾考虑过在触摸微调器时更改数组,然后在取消微调器时将其更改回原来的数组,但我认为这会导致混乱,或者创建一个看起来像微调器的按钮,从而打开一个自定义ListView对话框作为自定义微调器,但这似乎有些过分。有更简单的方法吗?您可以实现自己的适配器来实现此效果。重

我目前正在安卓系统中实现一个微调器,但在获得两个与微调器链接的数组时遇到了问题——一个用于微调器未扩展时,另一个用于微调器已扩展时

因此,微调器在未展开时的外观如下所示:

当它展开时,链接到它的数组将从字符串的缩短版本更改为长版本。


我曾考虑过在触摸微调器时更改数组,然后在取消微调器时将其更改回原来的数组,但我认为这会导致混乱,或者创建一个看起来像微调器的按钮,从而打开一个自定义ListView对话框作为自定义微调器,但这似乎有些过分。有更简单的方法吗?

您可以实现自己的适配器来实现此效果。重写返回“展开”视图的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
        }
    };
ArrayAdapter=新的ArrayAdapter(getActivity(),0,对象){
@凌驾
公共视图getDropDownView(int位置、视图转换视图、视图组父视图){
//充气并将要查看的视图返回为未展开的液滴列表
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
//充气并返回展开的视图
}
};

您可以实现自己的适配器以实现此效果。重写返回“展开”视图的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
        }
    };
ArrayAdapter=新的ArrayAdapter(getActivity(),0,对象){
@凌驾
公共视图getDropDownView(int位置、视图转换视图、视图组父视图){
//充气并将要查看的视图返回为未展开的液滴列表
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
//充气并返回展开的视图
}
};