【问题标题】:Spinner onItemSelected is not called using Marshmallow使用 Marshmallow 不调用 Spinner onItemSelected
【发布时间】:2015-12-08 23:18:37
【问题描述】:

我的应用中有一个微调器,我是这样实现的:

   //Setup spinner
    spinner = (AppCompatSpinner) findViewById(R.id.toolbar_spinner);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.sections, R.layout.spinner_item);
    adapter.setDropDownViewResource(R.layout.spinner_list_item);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            mViewPager.setCurrentItem(position);
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            mViewPager.setCurrentItem(0);
        }
    });

这适用于我的手机运行 API 级别 19 (4.4.2) 但运行在 API 级别 23 (6.0) 的 Marshmallow 上,永远不会调用 onItemSelected。

我已尝试使用 android.widget.Spinnerandroid.support.v7.widget.AppCompatSpinner,结果相同。

知道为什么吗?

【问题讨论】:

    标签: android android-spinner android-toolbar


    【解决方案1】:

    Android Spinner: onItemSelected listener is not called when selecting the same item

    只需创建 CustomSpinner;

    这样就解决了棉花糖的问题;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-04
      相关资源
      最近更新 更多