android list view clickable problem
Asked Answered
C

2

6

i have this customized list. each row contains an image and two lines of text one below the other. i want to open a new activity when any list item is clicked. but i am not able to do so, even after implementing the setOnItemClickListener(). please correct me if i am wrong. the below is the code for the list. PS: This is an normal activity and not list activity.

l1.setAdapter(new EfficientAdapter(this,eventTitleArray,eventDateArray,eventImageLinkArray));
   //l1 = getListView();
   l1.setClickable(true);
   l1.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1,
      int position, long arg3) {
     Intent intent = new Intent(MainActivity.this, DisplayActivity.class);
     Bundle b = new Bundle();
     b.putString("event", eventTitleArray[position]);
     intent.putExtras(bundle);
     startActivity(intent);

     Toast.makeText(getApplicationContext(), "Opening detailed view for:"+eventTitleArray[position], Toast.LENGTH_SHORT).show();


    }
   });
Coronagraph answered 30/11, 2010 at 17:30 Comment(0)
F
13

Please have a look whether the row layout has any items which are focusable. If an ListView Item contains focusable children, the Listview Handler will not be fired.

Foodstuff answered 1/12, 2010 at 11:3 Comment(1)
I tried doing this , holder.firstLine.setFocusable(false); holder.secondLine.setFocusable(false); holder.imageView.setFocusable(false); but it still doesn't work. firstLine,secondLine and imageView are present in each row layout.Coronagraph
S
2

I think there is a bug in the SDK that prevents the onItemClickListeners from firing when there are focusable views in the View of your items.

So you should try to do a setFocusable(false) on all the Views of your items.

The problem is described here

Sorgo answered 30/11, 2010 at 18:14 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.