spinner默认不显示,spinner默认值

http://www.itjxue.com  2023-01-09 08:06  来源:未知  点击次数: 

android spinner默认什么都不选择

项目开发中经常有些变态的需求,比如要求spinner默认不选中任何一项。

如果你自定义spinner,那这个当然不是问题;也可以在原有的选项列表中开头增加一项空字符串项,默认显示这个空字符串也达到了效果,不过采用这种方式需要你在获取被选择项的位置时忽略空字符串项。

经过一番摸索,发现我们只要保证 spinner第一次展示时不显示即可,相关代码如下:

boolean isSpinnerFirst = true ;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main) ;

Spinner spinner = (Spinner)findViewById(R.id.spinner) ;

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override

public void onItemSelected(AdapterView? parent, View view, int position, long id) {

if (isSpinnerFirst) {

//第一次初始化spinner时,不显示默认被选择的第一项即可

view.setVisibility(View.INVISIBLE) ;

}

isSpinnerFirst = false ;

}

@Override

public void onNothingSelected(AdapterView? parent) {

}

}) ;

}

spinner怎样设置默认值 。?

虽然好几年了才看到,我还是回答一下:

mSpinnerCountrtSpinner.setSelection(125, true);

第一个参数是下标,第二个写true就OK了。

你之前先比对下标,然后加进去参数就行。

高难问题,高手请进,spinner怎么去掉默认选中项

boolean b = false;//下拉栏Item的选择事件 spinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() { public void onItemSelected(AdapterView? adapterView, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub if (b) { //主要功能代码; } b = true; } public void onNothingSelected(AdapterView? arg0) { // TODO Auto-generated method stub } });这样spinner第一次载入的时候b为false,就不会执行方法里的主要代码,并把b置true,刚下一次便是真正的用户选择,主要代码得以执行。

(责任编辑:IT教学网)

更多