Spinner的自定义ArrayAdapter:下拉视图无法正常工作

Dar*_*der 1 android custom-controls adapter spinner

ArrayAdapter为a 创建了一个自定义Spinner.不同的是,它显示ArrayList的是复杂类而不是纯文本的图像.它到目前为止工作.图像和单选按钮根据需要显示.问题是,下拉视图的行为不正确:它不会在单击时关闭,只有单选按钮可以单击而不是整个视图.

有人知道什么是错的吗?我一定要实现某种listeneradapter

这是getDropDownView方法的代码:

@Override
    public View getDropDownView(int position, View convertView,
                                ViewGroup parent) {

        LayoutInflater inflater=(LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        LinearLayout view=(LinearLayout)inflater.inflate(R.layout.spinnerimageitem, null);

        ImageView iv=(ImageView)view.getChildAt(0);
        RadioButton rb=(RadioButton)view.getChildAt(1);

        int iImageID=ctx.getResources().getIdentifier(
                "f_"+funcs.get(position).getBitmapSetup(), 
                "drawable", ctx.getPackageName());  
        if(loco.getFunction(iIndex).equals(funcs.get(position)))
            rb.setChecked(true);
        iv.setImageResource(iImageID);
        return(view);
    }
Run Code Online (Sandbox Code Playgroud)

Pra*_*ani 7

android:focusable="false"在单选按钮的布局中设置.

  • 因为Spinner实现只允许视图中有一个可聚焦项.如果你设置单选按钮焦点将转移到单选按钮,所以项目失去了焦点..这就是你无法点击的原因 (2认同)