我有一个测试,我在 Spinner 上测试 OnItemSelectedListener。它在测试 > 0 的项目时效果很好。但似乎我无法测试第一个项目。
如果我选择索引 > 0 的项目,我当前的实现看起来像这样。
final Addpointer addPointer = getActivity();
addPointer.runOnUiThread(new Runnable() {
@Override
public void run() {
EditText address = (EditText) addPointer.findViewById(R.id.address);
address.setText("a");
Spinner spinner = (Spinner) addPointer.findViewById(R.id.intOrHex);
spinner.setSelection(0);
View view = (View) spinner.getChildAt(0);
long id = spinner.getAdapter().getItemId(0);
spinner.performItemClick(view, 0, id);
}
});
我需要做什么才能让测试“选择”第一项?
提前致谢
罗兰
回答: 1) Rahul garg 关于设置“动画”是解决问题的关键。 2) 但是你不能触发 onSelectionChanged 除非选择实际上改变了(0 是初始状态所以我需要在将它设置回零之前将它设置为 1。
最佳答案
使用
spinner.setSelection(0,true);
第二个参数实际上会将选择动画化到 0 索引。
关于android - 如何在测试中选择微调器的第一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9553496/