我想对DropDown
微调器的外观执行一些操作。
我找不到任何方法来获取“onShowListener”
有这样的倾听者吗?
答案 0 :(得分:0)
setOnItemSelectedListener可用,它将为您提供选择的项目
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0,
View arg1, int arg2, long arg3) {
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
答案 1 :(得分:0)
您可以实现此实现自己的SpinnerAdapter。
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
// Hide the keyboard here
}
只有在微调器出现时才会调用此方法。
您可以找到自定义SPinnerAdapter here
的示例答案 2 :(得分:0)
最简单的解决方案是使用OnTouchListener。但也许它会给你一些不必要的副作用,因为当你点击一个列表项时它也会被调用。
BTW您无法设置OnClickListener,因为它提供了此异常:
“java.lang.RuntimeException:不要为AdapterView调用setOnClickListener。你可能想要setOnItemClickListener而不是”
spinner.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Hide your Keyboard
return false;
}
});
答案 3 :(得分:0)
您是否尝试过添加setOnClickListener,然后检查是否已显示微调器