美文网首页
给布局、控件加阴影

给布局、控件加阴影

作者: 小赵不在 | 来源:发表于2020-12-17 10:27 被阅读0次

一共有两种方法:1. 直接在布局里设置属性 2. 在drawable里写一个xml布局

1. 直接在布局里设置属性
android:elevation="@dimen/px_1"
2. 在drawable里写一个xml布局
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
//阴影部分 top代表下边,left代表右边......
    <item android:top="1dp">
        <shape android:shape="rectangle">

            <gradient
                android:angle="270"
                android:endColor="#0F000000"
                android:startColor="#0F000000" />
        </shape>
    </item>
//背景部分
    <item

        android:bottom="1.5dp">
        <shape android:shape="rectangle">

            <gradient
                android:angle="270"
                android:endColor="#f3f1ff"
                android:startColor="#f3f1ff" />
        </shape>
    </item>
</layer-list>

这个是网上的正确答案

<!-- 阴影部分 -->  
<!-- left代表右边的阴影宽度...  也就是相对应的offset,solid中的颜色是阴影的颜色,也可以设置角度等等 -->  
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >  

<item  
    android:left="2dp"  
    android:top="2dp"  
    android:right="2dp"  
    android:bottom="2dp">  
    <shape android:shape="rectangle" >  

        <gradient  
            android:angle="270"  
            android:endColor="#0F000000"  
            android:startColor="#0F000000" />  

        <corners  
            android:bottomLeftRadius="6dip"  
            android:bottomRightRadius="6dip"  
            android:topLeftRadius="6dip"  
            android:topRightRadius="6dip" />  
    </shape>  
</item>  

<!-- 背景部分 -->  
<!-- 形象的表达:bottom代表背景部分在上边缘超出阴影的高度,right代表背景部分在左边超出阴影的宽度... -->  
<item  
    android:left="3dp"  
    android:top="3dp"  
    android:right="3dp"  
    android:bottom="5dp">  
    <shape android:shape="rectangle" >  

        <gradient  
            android:angle="270"  
            android:endColor="#FFFFFF"  
            android:startColor="#FFFFFF" />  

        <corners  
            android:bottomLeftRadius="6dip"  
            android:bottomRightRadius="6dip"  
            android:topLeftRadius="6dip"  
            android:topRightRadius="6dip" />  
    </shape>  
</item>  
</layer-list> 
 if (position % 2 == 0) {
            holder.rl_middle_write.setBackgroundResource(R.drawable.single_write_item)//单数
        } else {
            holder.rl_middle_write.setBackgroundResource(R.drawable.double_item)//双数
        }

相关文章

网友评论

      本文标题:给布局、控件加阴影

      本文链接:https://www.haomeiwen.com/subject/iewagktx.html