【问题标题】:Set Spinner Adapter without calling onItemSelected在不调用 onItemSelected 的情况下设置 Spinner Adapter
【发布时间】:2015-12-08 15:56:32
【问题描述】:

我的代码是这样的。

spinner.setAdapter(mAdapter);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
chosenPosition = position;
spinner.setEnabled(false);
}

我的意图是保存用户选择的位置并将其存储并立即禁用微调器。但是,当我设置适配器时,会自动选择第一项并且禁用微调器。设置Adapter时如何防止它调用onItemSelected方法?

谢谢。

【问题讨论】:

    标签: android spinner adapter


    【解决方案1】:

    在顶部定义一个标志,例如:

    boolean isFirstSelection = true;
    

    在你的 onItemSelected 方法中:

    spinner.setEnabled(isFirstSelection);
    if(isFirstSelection)    {
         isFirstSelection = !isFirstSelection;
    }
    

    【讨论】:

    • 非常感谢!这真的很有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多