android spinner默认啥都不选择

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)

) ;
参考技术A 最简单的办法:放一个空选项,然后用setSelection(int)在初始化的时候选中这个选项。。。 参考技术B 在加载的时候使用setSelection来进行默认选中 参考技术C 这个问题,我也不知道,哈哈,同求答案 参考技术D spinner.setOnItemSelectedListener(new OnItemSelectedListener()
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id)
switch (position)
case 0:
if(isFirstIn)
isFirstIn = false;
else
Toast.makeText(PostDetail.this, "分享", Toast.LENGTH_SHORT)
.show();

break;
.
.
.懂了没,很简单的标记就可以了本回答被提问者和网友采纳

以上是关于android spinner默认啥都不选择的主要内容,如果未能解决你的问题,请参考以下文章

Spinner 用法

Android:带按钮的 ListView -> OnItemClick 啥都不做

选择时更改 UITableViewCell 的 alpha 啥都不做

Android入门第23天-日历选择组件与时间选择组件

Nougat (android.R.layout.simple_spinner_item) 上深色背景上的黑色文本

选择项目后更改 Spinner 列表内容 Android