onClickListener on a LinearLayout

Viewed 39080

Got a little problem with a functionality I'd like to implement.

I've got a LinearLayout, containing 2 TextViews. I'd want to set a onClickListener on it, so that it would behave just like an item in a ListView.

I've tried some possible implementation of this, and got it working using the xml attribute android:onClick of the LinearLayout.

As I want the application to visually react to a click on the LinearLayout (as in a ListView), I put this in the listener callback method :

l.setBackgroundColor(android.R.drawable.list_selector_background);

l is a LinearLayout object, initialised with findViewById();

I get an application not responding whenever I try to click on the layout. I tried to replace the code in the callback method by a Toast message show up, and it works, so I guess the problem is in the setBackgroundColor.

Is anyone familiar with this?

PS: sorry, I can't post more code right now, I'm at work.

6 Answers

You have to set LinearLayout attribute android:clickable="true" in the xml layout file or setClickable(true) in the java activity code.

android:clickable="true" works perfectly under one condition. Youhave to put the childs inside the LilnearLayout to android:clickable="false".

Related