在listview中插入单个视图使listItem不可点击

我在listItemClick上的列表项内部放大视图。列表项包含一个复选框。 单击复选框时,包含两个/三个编辑文本字段和按钮的线性布局会被充气到该列表视图(通过游标适配器的getView方法完成,动态创建充气视图)。

列表视图在项目点击侦听器上注册。 在布局被充气后,onItemClick监听器不会被调用特定的项目。 帮我

我的getView代码

TextView text1  = (TextView) view.findViewById (R.id.text);
        text1.setText("text");

        CheckBox cb = (CheckBox)view.findViewById(R.id.checkBoxList) ;
        cb.setTag(tag);
        cb.setChecked(false);

        if ( chekedIdVector.contains(cursor.getString(cursor.getColumnIndex(ID) )))
        {
            cb.setChecked(true);
        }

        if( !idVector.isEmpty () )
        {
            LinearLayout ll =(LinearLayout)view.findViewById(R.id.layoutinCell);

            if ( ((String)idVector.lastElement()).equals(cursor.getString(cursor.getColumnIndex(_ID) )) )
            {

                if (ll.getChildCount() == 0 )
                {
                    ll.removeAllViews() ;
                    ll.addView(dynamicallyCreatedView); // view dynamically created with 2/3 textviews and buttons
                }

                ll.setVisibility(View.VISIBLE); 
                view.requestFocus() ;
            }

            else
            {
                ll.removeAllViews() ;
            }
        }

        return view  ;

Ps:我已经尝试了更改焦点的侦听器,并将复选框设置为不可聚焦在xml中


如果一切都失败了,可以考虑使用ExpandableListView(http://developer.android.com/reference/android/widget/ExpandableListView.html)或者从android:visibility =“GONE”开始充气项目,然后设置它作为“可见”而不是膨胀它们。

链接地址: http://www.djcxy.com/p/30553.html

上一篇: Insert a single view inside a listview makes listItem non clickable

下一篇: ListView items won't show focus when touched