Как я могу установить высоту тени только снизу на реагировать родной
Я пытаюсь добавить тень в нижней части вида, но я не знаю, как это сделать на Android. С elevation
он также накладывает тень сверху. Есть ли способ сделать это как на iOS?
Вот мой код:
export function makeElevation(elevation) {
const iosShadowElevation = {
shadowOpacity: 0.0015 * elevation + 0.18,
shadowRadius: 0.5 * elevation,
shadowOffset: {
height: 0.6 * elevation,
},
};
const androidShadowElevation = {
elevation,
};
return Platform.OS === 'ios' ? iosShadowElevation : androidShadowElevation;
}
слева: iOS (ожидается)
справа: Android
Ответы
Ответ 1
В IOS я использую этот код:
shadowRadius: 3,
shadowColor: "black",
shadowOpacity: 0.7,
shadowOffset: { width: 0, height: -5 },
Я думаю, что elevation
только для Android, в shadowOffset
вы можете обрабатывать направление тени, если вы установите 0 по ширине и высоте, тень обернет все компоненты.
Ответ 2
К сожалению RN не поддерживает его по умолчанию, проверьте ссылку удара
https://ethercreative.github.io/react-native-shadow-generator/
но вы можете использовать пакеты npm, такие как это