3

我已经尝试了很多解决方案,但是当位置对于微调器来说是可变的(即不是恒定的)时 setSelection(position) 不起作用。
以下是我尝试过的方法,所有方法都是在 setAdapter for spinner 之后编写的。
此外,我在调用此方法之前检查了 pos 变量值,该方法具有预期的值,但是在所有情况下,我都得到了第 0 个位置的默认元素。

1)通过使用处理程序:

int pos=getPos();  // some method to return default position to be displayed for spinner

    new Handler().postDelayed(new Runnable() {
        public void run() {
            clinicListSpinner.setSelection(pos,true);
        }
    }, 100);

2)设置动画参数为真:

clinicListSpinner.setSelection(position,true);

3)设置动画参数为假:

 clinicListSpinner.setSelection(position,false);

4)正常设置调用:

clinicListSpinner.setSelection(position);

在 android 4.1 上没有什么对我有用

但是当我将硬编码或常量值发送到变量时,它在上述所有情况下都很好用

e.g. clinicListSpinner.setSelection(1,true);

我已经搜索了很多,但没有得到任何解决我的问题的方法,请帮助我。提前致谢

4

0 回答 0