欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android小技巧:Spinner默认值设置为空

程序员文章站 2022-07-04 18:50:20
...

Android小技巧:Spinner默认值设置为空

前言

android系统给我们提供了很好用的spinner控件,而且也满足了我们大部分的需求。但是在实际应用的过程中,我们经常发现有这样的需求,就是spinner默认值为空,只有用户选择了某项值之后,才会显示具体的某个值。但是原谅我太菜,我没有在spinner找到设置默认值为空的方法。所以 这里就手撸了一个简单的方法。

思路

我们通过查看spinner的源码,发现spinner为viewgroup。那么我们显示的默认值,肯定就是spinner的子元素。我们只需要手动控制spinner子元素的显示与否就行了。

实践

既然有了记录,那么代码也很简单了

    public void setUserPosition(String userPosition) {
        int selectIndex=-1;
        for (int i=0;i<userPositionArray.length;i++){
            if (userPositionArray[i].equals(userPosition)){
                selectIndex=i;
                break;
            }
        }
        if (selectIndex<0) {
        	//如果没有找到对应的值,则显示为空白
            spinnerUserPosition.getChildAt(0).setVisibility(View.INVISIBLE); 
        } else {
        	//如果找到对应的值,则显示子元素
            spinnerUserPosition.getChildAt(0).setVisibility(View.VISIBLE);
            spinnerUserPosition.setSelection(selectIndex);
        }
    }

这就是一个给spinner设置值的方法,userPositionArray就是spinner对应的数组。相信聪明的你,上面代码一定能看懂

相关标签: android spinner