我有这个主题,
<style name="AppTheme" parent="@style/AppBaseTheme">
<item name="android:buttonStyle">@style/MyButtonStyle</item>
</style>
我需要为按钮定义另一种样式(称为MyButtonStyleDealer)。
使用以下代码我已经定义了错误android:buttonStyle
。
<style name="AppTheme" parent="@style/AppBaseTheme">
<item name="android:buttonStyle">@style/MyButtonStyle</item>
<item name="android:buttonStyle">@style/MyButtonStyleDealer</item>
</style>
我想知道是否可以为按钮定义第二种样式以及如何将其应用于View。
答案 0 :(得分:3)
如果问题正确,您可以在样式文件中添加按钮的另一个条目
<style name="MyNotClickableButtonStyle">
<item name="android:background">@drawable/my_button_background</item>
<item name="android:clickable">false</item>
</style>
并在您的布局中,
<Button
style="@style/MyNotClickableButtonStyle"
答案 1 :(得分:0)
你只能定义一个android:buttonStyle。如果您只想更改此按钮样式,则必须添加另一种样式。
如果您需要,可以使用另一个属性,但只能使用一次。 例如:
<style name="GlobalAppTheme" parent="Theme.Sherlock.Light">
<item name="android:actionBarStyle">@style/ActionBar</item>
<item name="actionBarStyle">@style/ActionBar</item>
<item name="android:editTextStyle">@style/GlobalTextView</item>
<item name="android:textColor">@color/text_gray</item>
<item name="android:checkboxStyle">@style/CheckBox</item>
<item name="android:radioButtonStyle">@style/RadioButton</item>
<item name="android:buttonStyle">@style/Button</item>
<item name="android:textSize">14sp</item>
<item name="android:actionBarItemBackground">@android:color/transparent</item>
<item name="actionBarItemBackground">@android:color/transparent</item>
<item name="android:alertDialogStyle">@style/Theme.Sherlock.Light.Dialog</item>
</style>
<style name="GlobalAppTheme2" parent="Theme.Sherlock.Light">
<item name="android:actionBarStyle">@style/ActionBar</item>
<item name="actionBarStyle">@style/ActionBar</item>
<item name="android:editTextStyle">@style/GlobalTextView</item>
<item name="android:textColor">@color/text_gray</item>
<item name="android:checkboxStyle">@style/CheckBox</item>
<item name="android:radioButtonStyle">@style/RadioButton</item>
<item name="android:buttonStyle">@style/Button</item>
<item name="android:textSize">14sp</item>
<item name="android:actionBarItemBackground">@android:color/transparent</item>
<item name="actionBarItemBackground">@android:color/transparent</item>
<item name="android:alertDialogStyle">@style/Theme.Sherlock.Light.Dialog</item>
</style>
答案 2 :(得分:0)
您可以设置如下特定样式:
<Button
android:id="@+id/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:onClick="sendMessage"
style="?android:attr/MyButtonStyleDealer" />