Android Tips: Making a Custom Button out of Anything
The Android APIs are filled with things that don’t quite seem right. I’ve always been annoyed by the lack of relationship between interface elements. For instance, isn’t a ListView really just a special case of a GridView with only one column? Yet GridView and ListView aren’t directly related, so we get oddities where I can add header and footer views to a ListView, but not a GridView.
One thing that seems to trip people up is the Button class.