Linux 定时任务React Native 之 Text的使用

简介:

Text 组件介绍


  • 在 React Native 用于显示文本的组件就是 Text,和iOS中的 UIlabel,Android中的 TextView类似,专门用来显示基本的文本信息,处理基本的显示布局外,还可以进行嵌套显示,设置样式,已经事件处理(如:点击事件)

Text 组件常用的属性和方法


  • color:字体颜色

        // 字体颜色
        color:'blue'

    效果:


  • numberOfLines:设置 Text 显示文本的行数,如果显示的内容超过行数,默认其余的文本信息不再显示

        render() {
            return (            <View style={styles.container}>                <Text style={styles.textStyle} numberOfLines={3}>雨泽Forest雨泽Forest雨泽Forest雨泽Forest雨泽Forest雨泽Forest雨泽Forest雨泽Forest雨泽Forest</Text>            </View>
            );
        }

    效果:

  • fontSize:字体大小

        // 字体大小    fontSize:30

    效果:

  • fontFamily:字体名称

        // 字体类型
        fontFamily:'Georgia'

    效果:

  • fontStyle('normal', 'italic'):字体风格

        // 字体风格
        fontStyle:'italic'

    效果:

  • fontWeight('normal', 'bold', '100 ~ 900'):指定字体的粗细。大多数字体都支持'normal'和'bold'值。并非所有字体都支持所有的数字值。如果某个值不支持,则会自动选择最接近的值

        // 字体粗细
        fontWeight:('bold', '700')

    效果:

  • textShadowOffset(width: number, height: number):设置阴影效果

  • textShadowColor:阴影效果颜色

        // 阴影    textShadowOffset:{width:3, height:5},    // 阴影颜色    textShadowColor:'black'

    效果:

  • textShadowRadius:阴影效果圆角(值越大阴影越模糊)

        // 阴影圆角    textShadowRadius:3

    效果:

  • letterSpacing:字符间距

        // 字符间距    letterSpacing:5

    效果:

  • lineHeight:行高

        // 行高    lineHeight:25

    效果:

  • textAlign('auto', 'left', 'right', 'center', 'justify'):文本对齐方式

        // 文本对齐方式
        textAlign:'auto'

    效果:

        // 文本对齐方式
        textAlign:'left'

    效果:

        // 文本对齐方式
        textAlign:'right'

    效果:

        // 文本对齐方式
        textAlign:'center'

    效果:

        // 文本对齐方式
        textAlign:'justify'

    效果:

    • justify


    • center


    • right


    • left


    • auto


  • textDecorationLine('none', 'underline', 'line-through'):横线位置

        // 横线
        textDecorationLine:'underline'

    效果:

        // 横线
        textDecorationLine:'line-through'

    效果:

    • line-through:


    • none:没有横线

    • underline:


  • textDecorationStyle('solid', 'double', 'dotted', 'dashed'):线风格

        // 横线风格
        textDecorationStyle:'solid'

    效果:

        // 横线风格
        textDecorationStyle:'double'

    效果:

        // 横线风格
        textDecorationStyle:'dotted'

    效果:

        // 横线风格
        textDecorationStyle:'dashed'

    效果:

    • dashed


    • dotted


    • double


    • solid


  • textDecorationColor:线的颜色

        // 线的颜色
        textDecorationColor:'black',

    效果:

  • allowFontScaling:控制字体是否要根据iOS的“文本大小”辅助选项来进行缩放

  • adjustsFontSizeToFit:指定字体是否随着给定样式的限制而自动缩放

  • minimumFontScale:当adjustsFontSizeToFit开启时,指定最小的缩放比(即不能低于这个值)。可设定的值为0.01 - 1.0

  • suppressHighlighting:当为true时,如果文本被按下,则没有任何视觉效果。默认情况下,文本被按下时会有一个灰色的、椭圆形的高光

  • selectable:决定用户是否可以长按选择文本,以便复制和粘贴

        render() {
            return (            <View style={styles.container}>                <Text style={styles.textStyle}                    selectable={true}
                    >
                        雨泽Forest                </Text>            </View>
            );
        }

    效果:

  • testID:用来在端到端测试中标记这个视图

  • onPress:当文本发生点击的时候调用该方法

        render() {
            return (            <View style={styles.container}>                <Text style={styles.textStyle}                    onPress={()=>{alert('点击')}}
                    >
                        雨泽Forest                </Text>            </View>
            );
        }

    效果:

  • onLongPress:当文本被长按以后调用此回调函数(参考onPress)

  • onLayout:当挂载或者布局变化以后调用(参数为:{nativeEvent: {layout: {x, y, width, height}}})(参考onPress)

Text 使用


  • 视图部分

        render() {
            return (            <View style={styles.container}>                <Text style={styles.textStyle}>雨泽Forest</Text>            </View>
            );
        }
  • 样式部分

        var styles = StyleSheet.create({
            container: {
                flex: 1,
                justifyContent: 'center',
                alignItems: 'center',
                backgroundColor: 'green',
            },
    
            textStyle: {            // 背景色
                backgroundColor:'yellow',            // 字体大小
                fontSize:30,            // 下划横线
                textDecorationLine:'underline'
            }
    
        });

    效果:

Text 组件的嵌套使用


  • 视图部分

        var test = React.createClass({
            render() {
                return (                <View style={styles.container}>                    <Text style={styles.textStyle} numberOfLines={3}>
                        雨泽                    <Text style={{color:'orange'}}>
                                Forest                    </Text>                    </Text>                </View>
                );
            }
        });
  • 样式部分

        var styles = StyleSheet.create({        container: {            flex: 1,            justifyContent: 'center',            alignItems: 'center',            backgroundColor: 'green',
            },        textStyle: {
                // 字体颜色            color:'blue',
                // 字体大小            fontSize:30
            }
    
        });

    效果:

Text 组件中样式的继承


  • 在 React Native 中是没有样式继承这种说法的,但对于 Text 元素里边的 Text 元素,其实是可以继承的,至于是单继承还是多继承,我们可以来试验一下

        var test = React.createClass({
            render() {
                return (                <View style={styles.container}>                    <Text style={styles.textStyle} numberOfLines={3}>                        <Text>                            <Text>雨泽Forest</Text>                        </Text>                    </Text>                </View>
                );
            }
        });
        var styles = StyleSheet.create({        container: {            flex: 1,            justifyContent: 'center',            alignItems: 'center',            backgroundColor: 'green',
            },        textStyle: {
                // 字体颜色            color:'blue',
                // 字体大小            fontSize:30
            }
    
        });

    效果:

    • 样式部分


    • 视图部分


  • 通过试验我们可以看出,文字控制类的属性也是多继承的,和 CSS 是一样的,而且会取与自己最近的属性归自己所用,也就是说属性可覆盖

本文转自  zddnd  51CTO博客,原文链接:http://blog.51cto.com/13013666/1939728
相关文章
|
Unix Linux
Linux中的Crontab:定时任务管理器
`crontab`是Linux下的定时任务管理器,用于设置周期性执行的任务。用户可以通过`crontab -l`查看任务,`crontab -e`编辑,`crontab -r`删除任务。任务格式为:`* * * * * command`,分别代表分钟、小时、日期、月份、星期,例如`30 10 * * * /path/to/script.sh`。注意确保命令有执行权限,处理环境变量,并关注日志文件 `/var/log/syslog` 或 `/var/log/cron`。学会使用`crontab`能有效自动化Linux系统的日常任务。
|
监控 Unix Linux
|
Linux
Linux Crontab 查看定时任务启动没
【10月更文挑战第20天】在Linux系统中,crontab用于设置周期性执行的任务。查看当前用户的Crontab任务列表,使用`crontab -l`;查看所有用户任务,使用`sudo crontab -l`或指定用户`sudo crontab -u username -l`。
2478 5
|
存储 运维 监控
运维.Linux下执行定时任务(中:Cron的常用替代方案)
本文是关于Linux下执行定时任务系列的第二部分,主要探讨除了Cron之外的常用替代方案。介绍了Systemd Timers、Anacron及at命令三种工具,它们分别适用于不同场景下的定时任务需求。文章详细分析了每种工具的特点、工作原理、基本使用方法及其高级功能,并对比了它们各自的优缺点,帮助读者根据实际情况选择最适合的定时任务解决方案。此外,还提供了指向具体实例和进一步阅读材料的链接。
1069 4
运维.Linux下执行定时任务(中:Cron的常用替代方案)
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
4691 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
Dart 前端开发 JavaScript
探索移动应用开发中的跨平台解决方案:Flutter与React Native的比较
在移动应用开发领域,选择合适的跨平台解决方案是关键。本文将深入分析Flutter和React Native这两大主流框架,从性能、开发效率、社区支持等方面进行比较,帮助开发者做出明智的选择。
595 27
|
开发框架 移动开发 前端开发
【Uniapp 专栏】Uniapp 与 React Native 的对比分析
【5月更文挑战第14天】Uniapp和React Native是热门的跨平台移动开发框架。Uniapp以其一套代码多端运行、丰富的组件生态和较低的学习曲线受到青睐,适合快速开发简单应用。React Native基于React,拥有活跃社区和优秀性能,适合复杂应用。React Native在性能上略胜一筹,尤其在需要接近原生体验的场景。Uniapp的官方组件弥补了社区资源不足。选择时需考虑开发效率、性能需求、团队技术栈和社区支持。
3474 1
【Uniapp 专栏】Uniapp 与 React Native 的对比分析
|
数据挖掘 Linux Shell
linux 使用crontab 创建定时任务
linux 使用crontab 创建定时任务
393 0
linux 使用crontab 创建定时任务
|
前端开发 JavaScript Android开发
React Native跨平台开发实战
【7月更文挑战第21天】React Native为跨平台移动应用开发提供了一种高效且强大的解决方案。通过本文的学习,你应该能够掌握React Native的基本概念和实战步骤,并开始在你的项目中使用React Native进行开发。随着你对React Native的深入理解,你将能够利用其强大的功能来构建更加复杂和高效的移动应用。
|
关系型数据库 MySQL Shell
【权限提升】Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
【权限提升】Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
569 4