如何将样式应用于Android应用程序中的所有按钮?
不起作用,因为没有如何将样式应用于Android应用程序中的所有按钮?,android,button,styles,Android,Button,Styles,不起作用,因为没有按钮样式项目名称。它只有按钮 我的例子是: <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="AppTheme" parent="@android:style/Theme.Black"> <item name="android:button">@style/ThemeButton</item&g
按钮样式
项目名称。它只有按钮
我的例子是:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppTheme" parent="@android:style/Theme.Black">
<item name="android:button">@style/ThemeButton</item>
</style>
<style name="ThemeButton" parent="@android:style/Widget.Button">
<item name="android:background">@drawable/button</item>
</style>
</resources>
@样式/主题按钮
@可拉拔/按钮
但是这也不起作用。当为不同的API级别使用不同的主题时,我会覆盖每个主题的按钮样式。考虑下面的例子。 您的应用程序API 14+的主题是一个源于android:theme.Holo.Light.DarkActionBar的主题
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
但是您的应用程序API 21的主题源于android:theme.Material.Light.DarkActionBar
<style name="AppBaseTheme" parent="android:Theme.Material.Light.DarkActionBar">
<!-- API 21 theme customizations can go here. -->
</style>
Widget.Button
是我上面提到的Widget.Holo.Light.Button
和Widget.Material.Light.Button
的前身。因此,如果您从应用程序中的Widget.Button
派生,您将丢失Google工程师为Widget.Material.Light.Button
和Widget.Holo.Light.Button
提供的自定义设置
我记录了几个例子来证明这一点
Android按钮样式。所有API级别的控件。按钮。
所有API级别的老式按钮
文件夹值中的styles.xml如下所示:
<style name="AppBaseTheme" parent="android:Theme.Light">
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@android:style/Widget.Button"></style>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Material.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
<style name="BaseButton" parent="@android:style/Widget.Material.Light.Button"></style>
</resources>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
</style>
<style name="BaseButton" parent="@android:style/Widget.Holo.Light.Button"></style>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppBaseTheme" parent="android:Theme.Light"></style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@style/BaseButton">
<item name="android:text">Lorem Ipsum</item>
</style>
</resources>
@样式/按钮
每个按钮样式都源自其主题的按钮样式。
该按钮具有材质动画
values-v21文件夹中的style.xml如下所示:
<style name="AppBaseTheme" parent="android:Theme.Light">
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@android:style/Widget.Button"></style>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Material.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
<style name="BaseButton" parent="@android:style/Widget.Material.Light.Button"></style>
</resources>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
</style>
<style name="BaseButton" parent="@android:style/Widget.Holo.Light.Button"></style>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppBaseTheme" parent="android:Theme.Light"></style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@style/BaseButton">
<item name="android:text">Lorem Ipsum</item>
</style>
</resources>
values-v14文件夹中的style.xml如下所示:
<style name="AppBaseTheme" parent="android:Theme.Light">
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@android:style/Widget.Button"></style>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Material.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
<style name="BaseButton" parent="@android:style/Widget.Material.Light.Button"></style>
</resources>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
</style>
<style name="BaseButton" parent="@android:style/Widget.Holo.Light.Button"></style>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppBaseTheme" parent="android:Theme.Light"></style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@style/BaseButton">
<item name="android:text">Lorem Ipsum</item>
</style>
</resources>
文件夹值中的styles.xml如下所示:
<style name="AppBaseTheme" parent="android:Theme.Light">
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@android:style/Widget.Button"></style>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Material.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
<style name="BaseButton" parent="@android:style/Widget.Material.Light.Button"></style>
</resources>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
</style>
<style name="BaseButton" parent="@android:style/Widget.Holo.Light.Button"></style>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppBaseTheme" parent="android:Theme.Light"></style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:buttonStyle">@style/Button</item>
</style>
<style name="Button" parent="@style/BaseButton">
<item name="android:text">Lorem Ipsum</item>
</style>
</resources>
@样式/按钮
乱数假文
是的,有按钮样式项。你确定你的应用程序中使用了Theme.Black吗?是的。但是没有按钮样式,请看我的屏幕:eclipse不显示它并不重要。它就在那里,试着键入它并运行你的应用程序。好的,当我使用它时,它会强制工作。谢谢…这不是强迫的。Eclipse有时并不完美:)为什么它停止使用API级别16?我不能为所有人设定一种风格buttons@Michail,你能把你的密码寄出去吗?例如,在Github上