清除android微调器中的选定值

清除android微调器中的选定值,android,android-studio,checkbox,android-spinner,Android,Android Studio,Checkbox,Android Spinner,选中该复选框后,将显示微调器;取消选中该复选框后,将隐藏微调器。我在下图中展示了这种组合 我使用下面的代码实现了这一点 halfHalfCB.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (halfHalfCB.isChecked()) { extraDescriptionHalf

选中该复选框后,将显示微调器;取消选中该复选框后,将隐藏微调器。我在下图中展示了这种组合

我使用下面的代码实现了这一点

halfHalfCB.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {

                if (halfHalfCB.isChecked()) {
                    extraDescriptionHalfSP.setVisibility(View.VISIBLE);
                    textview.setVisibility(View.VISIBLE);
                } else {
                    extraDescriptionHalfSP.setVisibility(View.GONE);
                    textview.setVisibility(View.GONE);
//                  String extraDescriptionHalf = extraDescriptionHalfSP
//                          .getSelectedItem() != null ? extraDescriptionHalfSP
//                          .getSelectedItem().toString() : null;
//                          extraDescriptionHalf = null;
                }
            }

        });

        addToCartButton.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {

                try {
                    String extraDescriptionHalf = extraDescriptionHalfSP
                            .getSelectedItem() != null ? extraDescriptionHalfSP
                            .getSelectedItem().toString() : null;
实际上,我的问题是,一旦选中该复选框,然后用户从微调器中选择一个值,然后用户取消选中该复选框。我想从微调器中清除选定值(或使选定值为空)。我该怎么做?“我的当前代码”微调器携带所选项目


我们将非常感谢您的帮助

要从微调器中删除项目,可以使用:

myspinner.setAdapter(null);

要从微调器中删除项目,可以使用:

myspinner.setAdapter(null);

我想你可以这样做:

  ...
  else {
                extraDescriptionHalfSP.setVisibility(View.GONE);
                extraDescriptionHalfSP.setSelection(-1);
                textview.setVisibility(View.GONE);
  ...

我想你可以这样做:

  ...
  else {
                extraDescriptionHalfSP.setVisibility(View.GONE);
                extraDescriptionHalfSP.setSelection(-1);
                textview.setVisibility(View.GONE);
  ...
用这个

checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {

            if(isChecked){
                spinner.setVisibility(View.VISIBLE);
            }else{
                spinner.setVisibility(View.GONE);
            }
        }
    }); 
用这个

checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {

            if(isChecked){
                spinner.setVisibility(View.VISIBLE);
            }else{
                spinner.setVisibility(View.GONE);
            }
        }
    }); 

@modabeckham这是怎么回事。。微调器仍将可见?此代码对我有效。不,它藏起来了。我使用的代码是extraDescriptionHalfSP.setVisibility(View.GONE);textview.setVisibility(View.GONE);extraDescriptionHalfSP.setAdapter(空)@实用程序我犯了一个错误,当我选择一个值后隐藏微调器时,它会使适配器为空,当我打开它时,不会加载项。维尼修斯给出了一个完美的答案。所以我必须投他的票。很抱歉。@modabeckham刚刚展示了一个选项,很高兴你得到了正确的答案solution@modabeckham这是怎么回事。。微调器仍将可见?此代码对我有效。不,它藏起来了。我使用的代码是extraDescriptionHalfSP.setVisibility(View.GONE);textview.setVisibility(View.GONE);extraDescriptionHalfSP.setAdapter(空)@实用程序我犯了一个错误,当我选择一个值后隐藏微调器时,它会使适配器为空,当我打开它时,不会加载项。维尼修斯给出了一个完美的答案。所以我必须投他的票。对此很抱歉。@modabeckham刚刚展示了一个选项,很高兴您得到了正确的解决方案