优点 随意调整 效果立即可见,快速实现。
缺点 自带大小会压缩布局;如果布局内有图片,容易被图片覆盖阴影
https://inloop.github.io/shadow4android/
<?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> <!-- SHADOW LAYER --> <item android:left="4dp" android:top="4dp"> <shape> <solid android:color="#66000000" /> <corners android:radius="30dip"/> </shape> </item> <!-- CONTENT LAYER --> <item android:bottom="4dp" android:right="4dp"> <shape> <solid android:color="#ff58bb52" /> <corners android:radius="30dip"/> </shape> </item> </layer-list> </item> </selector>
优点:不影响布局,灵活使用
缺点:难以调整效果,不够直观
android.support.v7.cardview
直接套在item外即可形成硬朗的卡片阴影效果,参数也可以调整。
app:cardBackgroundColor 设置背景颜色
app:cardCornerRadius 设置圆角大小
app:cardElevation 设置z轴的阴影
app:cardMaxElevation 设置z轴的最大高度值
app:cardUseCompatPadding是否使用CompatPadding
app:cardPreventCornerOverlap是否使用PreventCornerOverlap
app:contentPadding 设置内容的padding
app:contentPaddingLeft 设置内容的左padding
app:contentPaddingTop 设置内容的上padding
app:contentPaddingRight 设置内容的右padding
app:contentPaddingBottom 设置内容的底padding
优点:使用方便,md风格。
缺点:参数调整麻烦,需要重新编译;5.0以下系统效果受影响。
https://github.com/Devlight/ShadowLayout
优点:使用后会给所有子布局包括文字加上阴影,效果可以preview,
缺点:无法单独给多层布局最外层加阴影;引入了新的库占据资源;需要耐心调整
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。