阴影属性
- TypeScript
- JavaScript
参考
React Native 中有 3 组阴影 API
boxShadow: 一个 View 样式属性,是同名 Web 样式属性的符合规范的实现。dropShadow: 作为filterView 样式属性一部分的特定滤镜函数。- 各种
shadow属性 (shadowColor,shadowOffset,shadowOpacity,shadowRadius): 这些属性直接映射到平台级 API 公开的原生对应属性。
dropShadow 和 boxShadow 之间的区别如下
dropShadow作为filter的一部分存在,而boxShadow是一个独立的样式属性。dropShadow是一个 alpha 蒙版,因此只有 alpha 值大于 0 的像素才会“投射”阴影。boxShadow将围绕元素的边框盒投射,无论其内容如何(除非它是内嵌的)。dropShadow仅在 Android 上可用,boxShadow在 iOS 和 Android 上都可用。dropShadow不能像boxShadow那样内嵌。dropShadow没有像boxShadow那样的spreadDistance参数。
boxShadow 和 dropShadow 通常比 shadow 属性功能更强大。但是,shadow 属性映射到原生平台级 API,因此如果您只需要一个简单的阴影,建议使用这些属性。请注意,只有 shadowColor 在 Android 和 iOS 上都有效,所有其他 shadow 属性仅在 iOS 上有效。
属性
boxShadow
有关文档,请参阅 View 样式属性。
dropShadow Android
有关文档,请参阅 View 样式属性。
shadowColor
设置下拉阴影颜色。
此属性仅在 Android API 28 及更高版本上有效。对于较低 Android API 上的类似功能,请使用 elevation 属性。
| 类型 |
|---|
| 颜色 |
shadowOffset iOS
设置下拉阴影偏移量。
| 类型 |
|---|
对象: {width: number,height: number} |
shadowOpacity iOS
设置下拉阴影的不透明度(乘以颜色的 alpha 分量)。
| 类型 |
|---|
| 数字 |
shadowRadius iOS
设置下拉阴影的模糊半径。
| 类型 |
|---|
| 数字 |