截断文本-React Native

我有一个带有FlatList的React Native应用程序。

我添加的逻辑是,当第100位的角色不为空时,应添加扩展/折叠箭头,如下所示。短消息没有箭头图标。

好吧,这是错误的逻辑!现在,当我将应用程序字体更改为大/小时,此逻辑将不起作用。它也不适用于汉字大声笑。因此,它不应该基于字符数。

{  alert.charAt(100) !== "" ?
                arrowClicked === true ? 
                <Icon type='materialicons' name='arrow-drop-up' onPress={()=>{this.setFullLength()}}  />
                : 
                <Icon type='materialicons' name='arrow-drop-down' onPress={()=>{this.setFullLength()}}  />
                : null
            } 

它应该检测到文本很长并且被截断了。我该如何实施?请帮忙!!!!

古拉帕兰·吉里塔兰

您应该使用onTextLayout并使用如下所示的方法确定行长。

function CustomText(props) {
  const [showMore, setShowMore] = React.useState(false);
  const [lines, setLines] = React.useState(props.numberOfLines);

  const onTextLayout = (e) => {
    setShowMore(
      e.nativeEvent.lines.length > props.numberOfLines && lines !== 0
    );
  };

  return (
    <View>
      <Text numberOfLines={lines} onTextLayout={onTextLayout}>
        {props.children}
      </Text>
      {showMore && (
        <Button title="Show More"
          onPress={() => {
            setLines(0);
            setShowMore(false);
          }}
        />
      )}
      {!showMore && (
        <Button title="Hide More"
          onPress={() => {
            setLines(props.numberOfLines);
          }}
        />
      )}
    </View>
  );
}

用法

  const text =
    'Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to mak';

 <CustomText numberOfLines={2}>{text}</CustomText>

您也可以传递其他道具,例如样式。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从 React“截断文本”组件上的道具派生的状态

来自分类Dev

React Native:文本节点的“自动”宽度

来自分类Dev

react-native:多色文本视图

来自分类Dev

react-native AutoComplete文本输入

来自分类Dev

在React Native中垂直对齐文本

来自分类Dev

React Native Center对齐正文标题文本

来自分类Dev

在React Native中使用文本语音转换

来自分类Dev

在React Native中使用钩子更改文本

来自分类Dev

React Native在SVG图像上放置文本

来自分类Dev

React Native:对齐多行文本

来自分类Dev

React Native在文本上添加边框

来自分类Dev

React-Native 边框文本输入?

来自分类Dev

在react-native中的文本输入字段之前显示文本

来自分类Dev

如何在React Native中处理<Text>中的长文本

来自分类常见问题

如何在React Native中正确对齐文本输入?

来自分类常见问题

无法在React Native中存储使用输入文本的问题

来自分类Dev

在React Native中在圆形圆周上渲染文本

来自分类Dev

如何触摸并按住以在React Native中选择文本

来自分类Dev

带有Flexbox和React Native的容器外文本

来自分类Dev

文本颜色在React Native中没有改变

来自分类Dev

文本在React Native中不会垂直居中吗?

来自分类Dev

React-Native:错误设置和从ClipBoard获取文本

来自分类Dev

在React Native中通过props从数组设置文本

来自分类Dev

React Native:文本必须带有<Text>组件

来自分类Dev

React Native:无法更改<TextInput>组件中文本的颜色

来自分类Dev

在React Native中并排显示图像和文本

来自分类Dev

在React Native中以文本形式渲染对象项

来自分类Dev

React Native天才聊天:如何隐藏键盘和文本输入

来自分类Dev

按下时在react native中更改文本的背景颜色

Related 相关文章

热门标签

归档