I had a "cannot-click-item" problem with ListView.

In my case the "android:inputType" in TextView was the problem.

You should try removing attributes in text2.

Maybe start with 'android:numeric="integer"'?

On Jan 30, 4:33 am, tikky <[email protected]> wrote:
> I have an expandable list view, where the child view is a custom
> layout consisting of 2 text views within a RelativeLayout as follows:
> <RelativeLayout .....>
> <TextView xmlns:android="http://schemas.android.com/apk/res/android";
>     android:id="@android:id/text1"
>     android:layout_width="fill_parent"
>     android:layout_height="wrap_content"
>     android:paddingLeft="?android:attr/
> expandableListPreferredItemPaddingLeft"
>     android:textAppearance="?android:attr/textAppearanceMedium"
>     android:gravity="center_vertical"
> />
> <TextView xmlns:android="http://schemas.android.com/apk/res/android";
>     android:id="@+id/text2"
>     android:layout_height="fill_parent"
>     android:layout_width="wrap_content"
>     android:textAppearance="?android:attr/textAppearanceSmall"
>     android:layout_alignParentRight="true"
>     android:layout_centerInParent="true" android:numeric="integer"
> android:text="@string/text2"/>
> </RelativeLayout>
>
> However, when I click on the child view the onChildClick() is not
> getting called.
>
> If I remove the second text view text2 above, then it works fine and
> onChildClick() is called.
>
> Can anyone help me identify the problem here?
> This is the outline of my code:
>
>                         ExpandableListView list = (ExpandableListView) 
> findViewById
> (R.id.expandableListView);
>                         list.setVisibility(View.VISIBLE);
>                         Cursor groupCursor = 
> managedQuery(Category.CONTENT_URI,
> null, null, null, Items.DEFAULT_SORT_ORDER);
>                         // Set up our adapter
>                         mAdapter = new ShoppingListAdapter(groupCursor,
>                                         ShoppingListActivity.this,
>                                 R.layout.categories_list,//
> android.R.layout.simple_expandable_list_item_1,
>                                 R.layout.items_list,//
> android.R.layout.simple_expandable_list_item_1,
>                                 
> //android.R.layout.simple_list_item_multiple_choice,
>                                 new String[] {Category.NAME}, // Name for 
> group
> layouts
>                                 new int[] {android.R.id.text1},
>                                 new String[] {Items.NAME}, // Number for child
> layouts
>                                 new int[] {android.R.id.text1});
>                         list.setAdapter(mAdapter);
>
>                         list.setOnChildClickListener(new 
> OnChildClickListener(){
>
>                                         public boolean 
> onChildClick(ExpandableListView parent, View v,
> int groupPosition, int childPosition, long id) {
>                                                 // TODO Auto-generated method 
> stub
>                                                 showEditQuantityDialog();
>
>                                                 return true;
>                                         }
>                                });
>                      }
>
>     public class ShoppingListAdapter extends SimpleCursorTreeAdapter{
>
>         private String mItemsProjection[] = new String[] {
>                         Items._ID, Items.NAME
>         };
>         private static final String ITEMS_SELECTION = Items.CATEGORY_ID +
> "=?";
>
>         public ShoppingListAdapter(Cursor cursor, Context context, int
> groupLayout,
>                         int childLayout, String[] groupFrom, int[] groupTo, 
> String[]
> childrenFrom,
>                         int[] childrenTo) {
>                 super(context, cursor, groupLayout, groupFrom, groupTo,
> childLayout, childrenFrom,
>                                 childrenTo);
>
>         }
>
>         @Override
>         protected Cursor getChildrenCursor(Cursor groupCursor) {
>                 // Given the group, we return a cursor for all the children
> within that group
>                 Long groupId = groupCursor.getLong
> (groupCursor.getColumnIndexOrThrow(Category._ID));
>                 String strGroupId = Long.toString(groupId);
>                 String[] selectionArgs = new String[] { strGroupId };
>
>                 // The returned Cursor MUST be managed by us, so we use
> Activity's helper
>                 // functionality to manage it for us.
>                 return managedQuery(Items.CONTENT_URI, mItemsProjection,
> ITEMS_SELECTION, selectionArgs, Items.DEFAULT_SORT_ORDER);
>         }
>     }

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to