我想知道,我怎样才能将?android:attr/borderlessButtonStyle
按钮特定为背景正常颜色?
目前,我有以下按钮。
<Button
android:id="@+id/buy_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="?attr/shopButtonTextColor"
style="?android:attr/borderlessButtonStyle"
android:textStyle="bold"
android:text="@string/shop_buy" />
看起来像是
我期待的是
colorControlHighlight
(通常为灰色)颜色波纹覆盖。我做了以下修改。
<Button
android:id="@+id/buy_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="?attr/shopButtonTextColor"
style="?android:attr/borderlessButtonStyle"
android:background="@color/shop_button_background_color_material_light"
android:textStyle="bold"
android:text="@string/shop_buy" />
填充/边距信息似乎消失了。
当我按下它时,之前的纹波选择器就消失了。
我想知道,我如何使用?android:attr/borderlessButtonStyle
,但能够实现以下目标?
?android:attr/borderlessButtonStyle
中的填充/边距。?android:attr/borderlessButtonStyle
按钮的圆角(我猜是2dp)行为。colorControlHighlight
(通常为灰色)颜色波纹覆盖。答案 0 :(得分:1)
感谢@Vikram。通过使用以下技术,我能够获得具有所需背景颜色的漂亮的平面按钮效果。
<style name="ShopButton">
<item name="colorButtonNormal">@color/shop_button_background_color_material_light</item>
<item name="android:colorButtonNormal">@color/shop_button_background_color_material_light</item>
<item name="colorControlHighlight">@color/ripple_material_dark</item>
<item name="android:colorControlHighlight">@color/ripple_material_dark</item>
<item name="android:textColor">@color/shop_button_text_color_material_light</item>
<item name="android:textSize">16sp</item>
<item name="android:textStyle">bold</item>
</style>
<Button
android:id="@+id/buy_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?attr/buttonStyle"
android:theme="@style/ShopButton"
android:stateListAnimator="@null"
android:text="@string/shop_buy" />
看起来如下