Spinner on dropdown出现事件

时间:2014-06-23 11:58:37

标签: android spinner

我想对DropDown微调器的外观执行一些操作。

我找不到任何方法来获取“onShowListener”

有这样的倾听者吗?

4 个答案:

答案 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,然后检查是否已显示微调器