github上此问题的讨论 传送门

BUG 体现效果(左出问题安卓真机,右ios模拟器)

设置 minWidth 无法自动撑开 View,除非 minWidth 设置得大些

发生场景

这个解决方法不一定能够解决所有的问题,有必要说下我遇到的场景。

  • 发生在某些安卓机上,比如我的OnePlus而在另外的手机上又是正常的
  • 在 ios 上 ok
  • 在设置 fontWeight 字体粗细后产生的问题
  • 设置某些特定 fontFamily 可以解决问题

经过几番调试,基本可以确定应该是在没有设置 fontFamily 时,使用手机的默认字体,然后更改 fontWeight 后,字体显示的bug

解决方案

1. 给外部 View 设置宽度

给 View 设置固定宽度,可以将隐藏的字体展示出来

不过在许多情况下都不能确定内部字体的长度,希望可以自适应,此种方案适用性不高

2. 设置 font-family

给出现问题的 Text 组件,设置 fontFamily

这种方案适用性还是可以的,不过需要在每个出问题的 Text 组件设置还是稍显麻烦,如果能够全局设置一下就好了

3. 全局设置 fontFamily

解决方案

import React from 'react';
import { StyleSheet, Text } from 'react-native';`const styles = StyleSheet.create({defaultFontFamily: {fontFamily: 'lucida grande',    // 可以试试 fontFamily: '',}
});const oldRender = Text.prototype.render;
Text.prototype.render = function (...args) {const origin = oldRender.call(this, ...args);return React.cloneElement(origin, {style: [origin.props.style, styles.defaultFontFamily]});
};

通过改写覆盖 Text 组件 的 render,实现修改字体全局配置,代码放到入口文件,比如 app.js 里面就可以了

此外,这种方案会全局改掉字体,覆盖系统默认字体,可以试试改成 fontFamily: '',这样不会覆盖默认字体,出问题的 Text 组件也可以显示正常~

React Native Text 组件显示不全解决方案相关推荐

  1. React Native TEXT 组件文字显示不全 异常解决(小米文字显示不全:小米10 ,Redmi k30出现)

    开发中发现一处text组件 显示文字,总是丢末尾几个字符的异常.就很疑惑,拿小米11ultra(12.0.9)和小米8(12.0.3)测试正常,小米10(miui12.0.11)和redmi k30会 ...

  2. React Native-6.React Native Text组件,多组件封装实战之凤凰资讯页面

    现来个图:没图说个xx 先来分析怎么做 一个导航栏 一个列表 一个摘要列表 大体可以分为上中下三个模块,那么我们从上到下一次封装. 我们来搞出些事情 创建.js文件,一个组件一个.js文件 我们通过命 ...

  3. JScrollPane中添加组件时滚动条不出现或添加组件显示不全解决方案

    问题: 往滚动条容器里添加容器,再往容器中添加组件,当组件的大小超过滚动条的大小时,滚动条还不显现的解决办法.滚动条容器,在NEW的时候只能传一个容器进去.并且这个容器(zPanel)不需要设置大小. ...

  4. React-Native 踩坑------MIUI12“Text“组件显示异常

    React-Native 踩坑------MIUI12"Text"组件显示异常 我尽量不打错别字,用词准确,不造成阅读障碍 最近发现React-Native的应用在MIUI12上 ...

  5. 移动跨平台框架React Native状态栏组件StatusBar【16】

    前端江太公 React Native,是一个混合移动应用开发框架,是目前流行的跨平台移动应用开发框架之一.React Native 采用不同的方法进行混合移动应用开发.它不会生成原生 UI 组件,而是 ...

  6. GitChat · 移动开发 | 征服React Native—列表组件

    GitChat 作者:Li Luo 原文:征服React Native-列表组件 关注公众号:GitChat 技术杂谈,一本正经的讲技术 前言 移动应用往往受限于屏幕大小,而数据内容长度的不确定性,在 ...

  7. React Native 下载组件以及npm常用命令

    一.React Native 下载组件: RN的组件都是需要从网上下载的.正常来说,我们通过npm start打开服务器之后,直接用npm下载即可.常用的组件,例如按钮,滚动等,都是可以直接下载的.下 ...

  8. Android之React Native 中组件的生命周期

    React Native 中组件的生命周期 概述 就像 Android 开发中的 View 一样,React Native(RN) 中的组件也有生命周期(Lifecycle).所谓生命周期,就是一个对 ...

  9. React Native常用组件之ListView

    1. ListView常用属性 ScrollView 相关属性样式全部继承 dataSource ListViewDataSource 设置ListView的数据源 initialListSize n ...

最新文章

  1. 如何调用系统的包安装自己的apk呢?
  2. RelativeLayout 深入理解
  3. 支付宝人脸数据被共享?李开复道歉
  4. 【Python-ML】SKlearn库网格搜索和交叉验证
  5. ASA基本配置实验报告
  6. java项目大小_Java项目仅在调整窗口大小之后出现
  7. boost::mp11::mp_bind_front_q相关用法的测试程序
  8. composer 路径_深入学习Composer原理(三)
  9. 现代男人养生的10点忠告
  10. python流水灯程序_单片机流水灯汇编语言源代码大全(六款流水灯汇编语言源代码)...
  11. LaTeX组件:texlive2019+texstudio+sumatraPDF 安装包及学习手册
  12. oracle sql 取日期,Oracle SQL日期及日期格式获取命令,oraclesql
  13. EasyClick 易点云测自动化测试入门到精通
  14. html如何将搜索图标放入搜索框中
  15. MES系统报价这么高,企业为什么还要选择它?
  16. 计算机采用什么交换技术,计算机 交换技术是什么?
  17. python word2vec怎么用_小白看Word2Vec的正确打开姿势|全部理解和应用
  18. hander机制深入理解
  19. rqt teb参数动态调试工具_teb教程8
  20. 【溯源篇】CDN是什么

热门文章

  1. 量子力学第二弹——基本假设
  2. 天天生鲜项目——注册页面
  3. 慕司板V1注意事项及问题汇总
  4. 星际争霸等待暴雪服务器响应,服务器三个月未恢复正常,垂死挣扎的星际争霸,预示着傲慢的暴雪即将谢幕...
  5. MP9486开关电源芯片
  6. java内省和反射机制_Java内省和反射机制三步曲之 - 内省
  7. 产品经理如何来优化CSDN手机短信验证的功能
  8. ASP.NET中的Session和Cookie
  9. HarmonyOS系统中内核实现智慧物流控制的方法
  10. 2020年 ICLR 国际会议最终接受论文(poster-paper)列表(四)