如何在spinner android中启用/禁用click?

时间:2015-09-21 04:43:23

标签: android android-layout spinner

根据条件我想“显示微调器的下拉视图或显示默认值而不显示下拉”。我在微调器对象中使用了setClickable(false),但它不起作用。如何实现呢?

4 个答案:

答案 0 :(得分:4)

尝试:

((Spinner) spinner).getSelectedView().setEnabled(false);
spinner.setEnabled(false);

答案 1 :(得分:0)

在设置适配器之前禁用或启用它。

spinner.setEnabled(false);   
spinner.setClickable(false);  
spinner.setAdapter(typeAdapter);

答案 2 :(得分:0)

要禁用单个项目微调器中的单击而不显示该字段:

为微调器项 spinner_item.xml 创建xml布局:

<?xml version="1.0" encoding="utf-8"?>
<TextView  
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" 
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="#000000"         
/>

在代码中:

  ArrayAdapter<String> adapter = new ArrayAdapter<>(MainActivity.this, R.layout.spinner_item, SpinnerList); // replace SpinnerList with your own list you want to show
        Spinner spin = (Spinner) findViewById(R.id.android_spinner); // replace android_spinner with the id of yours
        if (SpinnerList.size() < 2) { // again change SpinnerList
            spin.setBackgroundColor(Color.TRANSPARENT); // if you don't want to show the dropdown arrow
            spin.setEnabled(false); // it will disable click in spinner
        }
        spin.setAdapter(adapter);

答案 3 :(得分:0)

通过在下面的行中写

启用/禁用微调它。

spinner.onSelectedItemListener

spinner.setEnabled(false); //以编程方式