Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android按钮上创建阴影(材质设计)_Android_Css_Material Design - Fatal编程技术网

如何在Android按钮上创建阴影(材质设计)

如何在Android按钮上创建阴影(材质设计),android,css,material-design,Android,Css,Material Design,这里我想问一个简单的问题让我很困惑, 我正在开发一个android应用程序,我想使用材料设计主题 但是当我尝试在RaisedButton下编码阴影时,它不起作用。 我的意思是,它只是在按钮周围划一圈,而不是在阴影周围 师傅,帮帮我,有什么简单的方法可以制作这个影子吗?? 谢谢 注意。这是我的custon_button.xml <item android:state_pressed="true" > <shape> <solid

这里我想问一个简单的问题让我很困惑, 我正在开发一个android应用程序,我想使用材料设计主题

但是当我尝试在RaisedButton下编码阴影时,它不起作用。 我的意思是,它只是在按钮周围划一圈,而不是在阴影周围

师傅,帮帮我,有什么简单的方法可以制作这个影子吗?? 谢谢

注意。这是我的custon_button.xml

<item android:state_pressed="true" >
    <shape>
        <solid
            android:color="@color/solidpress"
            />
        <stroke
            android:width="1dp"
            android:color="@color/strokepress" />
        <corners
            android:radius="2dp" />
        <padding
            android:left="5dp"
            android:top="10dp"
            android:right="1dp"
            android:bottom="10dp" />
    </shape>
</item>

<item android:state_focused="true" > //focused fuck shit man
    <shape>
        <solid
            android:color="@color/solidfocus"
            />
        <stroke
            android:width="3dp"
            android:color="@color/strokefocus" />
        <corners
            android:radius="2dp" />
        <padding
            android:left="5dp"
            android:top="10dp"
            android:right="5dp"
            android:bottom="10dp" />
    </shape>
</item>

<item> // normal

    <shape>
        <solid
            android:color="@color/solidnormal" />
        <stroke
            android:width="1dp"
            android:color="@color/strokenormal" />
        <corners
            android:radius="2dp" />
        <padding
            android:left="5dp"
            android:top="10dp"
            android:right="1dp"
            android:bottom="10dp" />
    </shape>
</item>


shadow.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <layer-list>
        <item android:right="5dp" android:top="5dp">
            <shape>
                <corners android:radius="3dp" />
                <solid android:color="#D6D6D6" />
            </shape>
        </item>
        <item android:bottom="2dp" android:left="2dp">
            <shape>
                <gradient android:angle="270" 
                    android:endColor="#E2E2E2" android:startColor="#BABABA" />
                <stroke android:width="1dp" android:color="#BABABA" />
                <corners android:radius="4dp" />
                <padding android:bottom="10dp" android:left="10dp" 
                    android:right="10dp" android:top="10dp" />
            </shape>
        </item>
    </layer-list>
</item>

</selector>

请查看此材质类型的阴影:

Shadow.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <layer-list>
        <item android:right="5dp" android:top="5dp">
            <shape>
                <corners android:radius="3dp" />
                <solid android:color="#D6D6D6" />
            </shape>
        </item>
        <item android:bottom="2dp" android:left="2dp">
            <shape>
                <gradient android:angle="270" 
                    android:endColor="#E2E2E2" android:startColor="#BABABA" />
                <stroke android:width="1dp" android:color="#BABABA" />
                <corners android:radius="4dp" />
                <padding android:bottom="10dp" android:left="10dp" 
                    android:right="10dp" android:top="10dp" />
            </shape>
        </item>
    </layer-list>
</item>

</selector>

看看这种材质的阴影:

如果rajan ks的答案不起作用,你可以尝试将按钮包装在CardView中(
android.support.v7.widget.CardView
),并使用其
app:cardElevation
属性给CardView一些提升

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardElevation="4dp"
    app:cardPreventCornerOverlap="false">

    <Button />

</android.support.v7.widget.CardView>

如果rajan ks的答案无效,您可以尝试将按钮包装到CardView(
android.support.v7.widget.CardView
)中,并使用其
app:cardElevation
属性为CardView提供一些提升

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardElevation="4dp"
    app:cardPreventCornerOverlap="false">

    <Button />

</android.support.v7.widget.CardView>

请看这个

    <selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="false"><layer-list>
            <item><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#036b86" android:startColor="#01bff3"></gradient>

                    <corners android:radius="5dp" />
                </shape></item>
            <item android:bottom="3dp"><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#01bff3" android:startColor="#01bff3"></gradient>

                    <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />

                    <corners android:radius="5dp" />
                </shape></item>
        </layer-list></item>

    <item android:state_pressed="true"><layer-list>
            <item ><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#01bff3" android:startColor="#036b86"></gradient>

                    <corners android:radius="5dp" />
                </shape></item>
            <item android:top="3dp"><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#01bff3" android:startColor="#01bff3"></gradient>

                    <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />

                    <corners android:radius="5dp" />
                </shape></item>
        </layer-list></item>

</selector>

请看这个

    <selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="false"><layer-list>
            <item><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#036b86" android:startColor="#01bff3"></gradient>

                    <corners android:radius="5dp" />
                </shape></item>
            <item android:bottom="3dp"><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#01bff3" android:startColor="#01bff3"></gradient>

                    <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />

                    <corners android:radius="5dp" />
                </shape></item>
        </layer-list></item>

    <item android:state_pressed="true"><layer-list>
            <item ><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#01bff3" android:startColor="#036b86"></gradient>

                    <corners android:radius="5dp" />
                </shape></item>
            <item android:top="3dp"><shape>
                    <gradient android:angle="270" android:centerColor="#00c0f0" android:endColor="#01bff3" android:startColor="#01bff3"></gradient>

                    <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />

                    <corners android:radius="5dp" />
                </shape></item>
        </layer-list></item>

</selector>


我尝试过这个代码,但它看起来像一个旧的按钮样式,我的意思是有一个渐变,但我寻找的是材质设计按钮样式,。谢谢你回答我的问题:)我试过这个代码,但它看起来像一个旧的按钮样式,我的意思是有一个梯度,但我所寻找的是材料设计按钮样式,。谢谢你回答我的问题:)是的,兄弟,我认为它工作了,现在只是如何给按钮添加表面反应??哦,是的,我忘了一件事,我如何设置阴影的深度和大小??调整是的,兄弟,我认为它工作了,现在只是如何给按钮添加表面反应??哦,是的,我忘了一件事,如何设置阴影的深度和大小??调整