在Android中禁用微调

我在使用android:enabled="false"时候遇到了问题,在它是一个spinner的情况下,它不会禁用这个组件 。 不知道它是否相关,但它属于一个viewflipper的一部分的布局。

任何提示或解决方法?

谢谢

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

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

您可以在xml设置android:clickable="false"以禁用单击eventspinner

无法在XML(还)中启用/禁用Spinner。 要做到这一点,你必须在代码中做到这一点。

这是一个例子:

 Spinner spinner = (Spinner) findViewById(R.id.mySpinner); spinner.setEnabled(false); 

您可以在Java代码本身中而不是在XML ,因为Spinner应该从View实现setEnabled(boolean)

试试这个代码可能会对你有帮助。

  <Spinner android:id="@+id/spn" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone" /> 

要么

 android:visibility="invisible" android:visibility="visible" Spinner spinner = (Spinner) findViewById(R.id.mySpinner); spinner.setVisibility(View.INVISIBLE); 

要么

  spinner.setVisibility(View.VISIBLE); spinner.setVisibility(View.GONE); 

为启用或desable

  yourSpinner.setEnabled(false); yourSpinner.setEnabled(true); 

要么

  yourSpinner.setClickable(false); yourSpinner.setClickable(true);