样式不起作用的材质设计按钮
我有一个背景颜色为DarkBlue的按钮,我需要这个按钮的Material设计风格,如下所示:
如何可能
<Button
android:id="@+id/login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:background="#0040FF"
android:textColor="#FFFF"
android:layout_marginRight="10dp"
android:text="Login" />
我需要使用:
style="?android:attr/buttonStyleSmall"
android:background="?android:attr/selectableItemBackground"
通常在我使用
时<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:paddingRight="15dp"
android:layout_gravity="center"
android:text="Login"
android:paddingLeft="15dp"
android:id="@+id/login" />
适用于Design。
是否可以使用背景图像/颜色执行材质设计按钮样式。 对于我在UI中工作的简单问题感到抱歉。
答案 0 :(得分:1)
在drawable-v21目录中使用drawable ripple.xml作为背景,例如:
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?attr/colorControlHighlight">
<item android:drawable="?attr/colorPrimary"/>
</ripple>
对于少于sdk 21,您必须在drawable文件夹中创建自定义选择器ripple.xml。那么它将加载到lollypop设备中
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/primaryPressed" android:state_pressed="true"/>
<item android:drawable="@color/primaryFocused" android:state_focused="true"/>
<item android:drawable="@color/primary"/>
</selector>
根据您的需要使用自定义颜色
然后
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:paddingRight="15dp"
android:layout_gravity="center"
android:text="Login"
android:paddingLeft="15dp"
android:background="@drawable/ripple"
android:id="@+id/login" />