我一直在研究有关微调器以及何时触发 onItemSelected 的线程。我得出的结论是,无论您是手动选择微调器项目还是通过 spinner.setSelection(position) 方法以编程方式选择项目都会触发它。
我的问题是我的代码中首先调用了 OnItemSelected 回调方法,但是在其他几个方法完成执行后才执行它。这是不受欢迎的行为,因为我的代码逻辑依赖于按顺序执行的某些步骤。
if(conition is true)
fillSpecialtySpinner();
if(another condition is true)
fillSubSpecialtySpinner();
fillSpecialtySpinner() 方法包含 spinner.setSelection(position) 行代码。但不知何故,它在检查第二个 if 并且 fillSubSpecialtySpinner 完成执行之后执行。
任何帮助,将不胜感激。先感谢您!