为什么没有android:clickable =“false”为Spinner工作?

时间:2017-03-16 12:24:19

标签: android spinner android-spinner

以下微调器仍可单击以显示列表:

<Spinner
    android:id="@+id/spinnerFoo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_marginLeft="15dp"
    android:gravity="center"
    android:clickable="false"/>

有人可以对此有所了解吗? 我从我的阅读中知道,可以通过Java代码(spinnerFoo.setEnabled(false))来禁用微调器。我的问题是在XML中执行它。

[编辑] 以下是使用微调器的所有Java代码:

ArrayAdapter<Integer> adapterFoo = new ArrayAdapter<Integer>(this, R.layout.spinner_item, aiFoo);
spinnerFoo = (Spinner) findViewById(R.id.spinnerFoo );
spinnerFoo .setAdapter(adapterFoo );
spinnerFoo .setSelection(1);

3 个答案:

答案 0 :(得分:2)

Clickable不会阻止微调器打开,因为它不依赖于click事件。你必须使用android:enabled="false"

修改 您可以在Java代码本身而不是在XML中设置它,因为Spinner应该从View

实现setEnabled(boolean)

答案 1 :(得分:1)

添加此android:enabled =&#34; false&#34;

答案 2 :(得分:1)

将此内容写入xml

android:enabled="false"