android中图型的阴影效果(shadow-effect-with-custom-shapes)
2014-05-30 22:18
555 查看
思路:
在自定义shape中增加一层或多层,并错开,即可显示阴影效果。为增加立体感,按钮按下的时候,只设置一层。我们可以通过top, bottom, right 和 left 四个参数来控制阴影的方向和大小。
![](https://img-blog.csdn.net/20140530221535140?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvTlVQVGJveVpIQg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
关系图以下自定义两种阴影效果:res/drawable-hdpi/shadow1.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true">
<layer-list>
<item android:left="4dp" android:top="4dp"><shape>
<solid android:color="#ff58bb52" />
<corners android:radius="30dip" />
</shape></item>
</layer-list>
</item>
<item>
<layer-list>
<!-- 第一层 -->
<item android:left="4dp" android:top="4dp"><shape>
<solid android:color="#66000000" />
<corners android:radius="30dip" />
<!-- 描边 -->
<stroke android:width="1dp" android:color="#ffffffff" />
</shape></item>
<!-- 第二层 -->
<item android:bottom="4dp" android:right="4dp"><shape>
<solid android:color="#ff58bb52" />
<corners android:radius="30dip" />
<!-- 描边 -->
<stroke android:width="1dp" android:color="#ffffffff" />
</shape></item>
</layer-list></item>
</selector>
/TestAA/res/drawable-hdpi/shadow2.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 点击之后 -->
<item android:state_pressed="true">
<layer-list>
<item
android:left="4dp"
android:top="4dp">
<shape>
<solid
android:color="#ff58bb52" />
<corners
android:radius="3dp" />
</shape>
</item>
</layer-list></item>
<!-- 正常状态 -->
<item>
<layer-list>
<!-- 第一层 -->
<item
android:left="2dp"
android:top="2dp">
<shape>
<solid
android:color="#66000000" />
<corners
android:radius="3dp" />
</shape>
</item>
<!-- 第二层 -->
<item
android:bottom="4dp"
android:right="4dp">
<shape>
<solid
android:color="#ff58bb52" />
<corners
android:radius="3dp" />
</shape>
</item>
<!-- 第三层 -->
<item
android:bottom="6dp"
android:right="6dp">
<shape>
<solid
android:color="#ffcccccc" />
<corners
android:radius="3dp" />
</shape>
</item>
</layer-list>
</item>
</selector>
效果图:
在自定义shape中增加一层或多层,并错开,即可显示阴影效果。为增加立体感,按钮按下的时候,只设置一层。我们可以通过top, bottom, right 和 left 四个参数来控制阴影的方向和大小。
关系图以下自定义两种阴影效果:res/drawable-hdpi/shadow1.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true">
<layer-list>
<item android:left="4dp" android:top="4dp"><shape>
<solid android:color="#ff58bb52" />
<corners android:radius="30dip" />
</shape></item>
</layer-list>
</item>
<item>
<layer-list>
<!-- 第一层 -->
<item android:left="4dp" android:top="4dp"><shape>
<solid android:color="#66000000" />
<corners android:radius="30dip" />
<!-- 描边 -->
<stroke android:width="1dp" android:color="#ffffffff" />
</shape></item>
<!-- 第二层 -->
<item android:bottom="4dp" android:right="4dp"><shape>
<solid android:color="#ff58bb52" />
<corners android:radius="30dip" />
<!-- 描边 -->
<stroke android:width="1dp" android:color="#ffffffff" />
</shape></item>
</layer-list></item>
</selector>
/TestAA/res/drawable-hdpi/shadow2.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 点击之后 -->
<item android:state_pressed="true">
<layer-list>
<item
android:left="4dp"
android:top="4dp">
<shape>
<solid
android:color="#ff58bb52" />
<corners
android:radius="3dp" />
</shape>
</item>
</layer-list></item>
<!-- 正常状态 -->
<item>
<layer-list>
<!-- 第一层 -->
<item
android:left="2dp"
android:top="2dp">
<shape>
<solid
android:color="#66000000" />
<corners
android:radius="3dp" />
</shape>
</item>
<!-- 第二层 -->
<item
android:bottom="4dp"
android:right="4dp">
<shape>
<solid
android:color="#ff58bb52" />
<corners
android:radius="3dp" />
</shape>
</item>
<!-- 第三层 -->
<item
android:bottom="6dp"
android:right="6dp">
<shape>
<solid
android:color="#ffcccccc" />
<corners
android:radius="3dp" />
</shape>
</item>
</layer-list>
</item>
</selector>
效果图:
相关文章推荐
- android中图型的阴影效果(shadow-effect-with-custom-shapes)
- Android中图型的阴影效果(shadow-effect-with-custom-shapes)
- Android中图型的阴影效果(shadow-effect-with-custom-shapes)
- android中图型的阴影效果(shadow-effect-with-custom-shapes)
- Android中图型的阴影效果(shadow-effect-with-custom-shapes)
- Shadow effect with custom shapes
- 阴影效果DropShadowEffect
- Android编程使用自定义shape实现shadow阴影效果的方法
- Silverlight & Blend动画设计系列七:模糊效果(BlurEffect)与阴影效果(DropShaDropShadowEffect)
- android中图型的阴影效果
- 在文字周围环绕一层阴影效果[android:shadow] 使用
- AndroidLinearLayout:添加阴影边界LinearLayout - Android LinearLayout : Add border with shadow around a line
- android文字阴影效果
- css3新功能之(text-shadow实现)CSS3文字阴影效果
- css实现类似相框的阴影div的shadow效果
- Android之阴影制作(Shadow)
- Android自定义Shape 加上阴影shadow之方法
- android 把TextView中的文字添加阴影效果
- 了解CSS3的文字阴影效果 - Text Shadow effects
- Android TextView 显示文字阴影效果