Android 6.0 棉花糖中的微调器功能问题



我的用户在 Android 6.0 中报告了一个与微调器控制相关的问题。用户无法选择列表中的任何项目。同样的应用程序在

问题的屏幕截图。

这是我的示例代码:

XML代码

<Spinner
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/spinnerImportance"
android:spinnerMode="dialog"
android:popupBackground="#f5f5f5"
android:prompt="@string/spinner_prompt"
android:theme="@style/Base.Widget.AppCompat.Spinner"
android:dropDownWidth="fill_parent" />

爪哇代码

public class EvaluationActivity extends ActionBarActivity implements AdapterView.OnItemSelectedListener {
private Spinner spinnerImportance;
String[] importance = {"Select", "1 or less - Low importance", "2 - Moderate importance", "3 - High importance", "4 - Exceptionally important"};
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_evaluation);
        //Importance
        spinnerImportance = (Spinner) findViewById(R.id.spinnerImportance);
        spinnerImportance.setOnItemSelectedListener(this);
        ArrayAdapter<String> dataAdapterImportance = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, importance);
        dataAdapterImportance.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);            
        spinnerImportance.setAdapter(dataAdapterImportance);
        spinnerImportance.setSelection(getIndexFromScore(abs.M1, IMPORTANCE));
}
//Rest of the Code
}

我没有Android 6驱动的设备来修复和测试相同的问题。任何确定的解决方案都将有很大帮助。

我遇到了同样的问题,就我而言,这是一个样式问题。

我正在显示一个AppCompatSpinner,其中包含我专门为对话框类型微调器创建的样式,因此它为spinnerMode定义了设置为 dialog 的属性。 我的基本微调器样式继承自Widget.AppCompat.Spinner默认情况下将 clickable 属性设置为 true,因为默认情况下微调器的类型为 dropdown。这导致整个微调器注册单击而不是单个项目。

因此,在我的对话框特定微调器样式中添加要falseclickable属性集为我解决了这个问题。

最新更新