I am using the AppCompat theme and I want set the minHeight attribute on my buttons:
<style name="Theme.MyTheme" parent="Theme.AppCompat">
<style name="MyButtonStyle" parent="...?">
However, there is no
Widget.AppCompat.Button style to set as the parent for
MyButtonStyle. If I use
android:Widget.Button, then all my buttons look like the old crappy style. I tried various other AppCompat themes like
TextAppearance.AppCompat.Button, but they do not work.
Leaving out a parent theme for the button style also causes the button not to be styled correctly.
How can I customize the default
Best How To :
You can have
android:Widget.Holo.Button on API 14+ (in
android:Widget.Material.Button on API 21+ (in
res/values-v21/styles.xml. This style will change according to the device system version. Put your platform specific modifications here.
Base.MyButtonStyle and define the
android:minHeight here (in
res/values/styles.xml). This will apply to all platforms.
You buttons then can use style
This example assumes your minimum SDK is 14.
And yes, there's no appcompat-v7 button style (well, at least not yet).
This assumes you're OK with Holo button on platforms older than Lollipop. It feels unobtrusive and if you can do without ripples, it should be just fine. If you want ripples I suggest you google for a third party lollipop button library.