react native expo 如何让文字产生线性渐变

react native expo 如何让文字产生线性渐变

首先下载 线性渐变的按钮插件

npx expo install expo-linear-gradient

然后再要使用的页面进行引用就可以了,

import { LinearGradient } from 'expo-linear-gradient';

官方的链接在这里相关属性可以自己去查询
下面是一个简单的例子

import * as React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import { LinearGradient } from 'expo-linear-gradient';

export default function App() {
  return (
    <View style={styles.container}>
      <LinearGradient
        // Background Linear Gradient
        colors={['rgba(0,0,0,0.8)', 'transparent']}
        style={styles.background}
      />
      <LinearGradient
        // Button Linear Gradient
        colors={['#4c669f', '#3b5998', '#192f6a']}
        style={styles.button}>
        <Text style={styles.text}>Sign in with Facebook</Text>
      </LinearGradient>
    </View>
  );
}

const styles = StyleSheet.create({ ... }); 

以上我们就实现了一个线性渐变的方块,但怎样实现一个线性渐变的文字呢?这里我们就需要另外一个插件 MaskedView这是它官方描述的链接
可以通过以下方法来进行插件的下载

npx expo install @react-native-masked-view/masked-view

通过如下声明你就可以去想要的声明重使用了

import MaskedView from '@react-native-community/masked-view';

下面是一个简单的线性渐变文字例子

<MaskedView
                      style={{ height:50,marginTop:120,left:30}}
                      maskElement={
                        <View>
                           <Text style={{ fontSize: 30,fontWeight:'700' }}>0123456789</Text>
                        </View>
                    
                         }
                      >
                        <LinearGradient
                          colors={['#ABABAB', '#F4F4F4','#909090', '#F4F4F4']}
                          start={{ x: 0, y: 0 }}
                          end={{ x: 0, y: 0.7 }}
                          style={{ flex: 1 }}
                        />
                      </MaskedView>

相关的属性我就补一一介绍了,大家可以自行搜索,对了,这样使用后如果你线性渐变的文字想要修改其字体样式会出现找不到字体样式的问题,我暂时找不到解决办法,如果又小伙伴又解决方法欢迎留言告诉我,感谢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值