Making a LinearLayout act like an Button
Solution 1:
If you want add the Android default background behavior to make a Layout
acts like a "clikable" View
, set on the targeted Layout
:
API 11+ (Pure Android):
android:background="?android:attr/selectableItemBackground"
API 7+ (Android + AppCompat Support Library):
android:background="?attr/selectableItemBackground"
Any API:
android:background="@android:drawable/list_selector_background"
Answers above still true but didn't help me for just add the default pressed and released UI state (like in a ListView
for instance).
Solution 2:
I ran into this problem just now. You'll have to set the LinearLayout to clickable. You can either do this in the XML with
android:clickable="true"
Or in code with
yourLinearLayout.setClickable(true);
Cheers!
Solution 3:
I used the first and second answer. But my linearlayout has images and text with background color, so i had to change "background" to "foreground"
linearlayout
android:foreground="?android:attr/selectableItemBackground"
android:clickable="true"