首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何确定多行文本中断后“更多”链接/按钮的位置

如何确定多行文本中断后“更多”链接/按钮的位置
EN

Stack Overflow用户
提问于 2019-04-14 08:05:00
回答 2查看 565关注 0票数 2

我想实现instagram的字幕突破功能在一个反应-原生应用程序(一个“更多”链接后的长文本中断),但通过选择确定确切的字符位置行中断放置“更多”链接。

例如,如果标题中有以下文本:

Lorem ipsum dolor同坐,附庸ancillae eos te,eum et justo dolor.镀锡效率尤梅,海在埃克斯珀修斯。与之相类似,卢西利乌斯。在都市人的智慧世界里。[医]鼠尾草属( Partiendo molestiae et eos .)

给定numberOfLines={2},它会在“更多”(而不是确切的2行)之前显示(比如)一行半的文本。

本阶段对我的示例的期望视图

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-14 13:13:06

实际上有一个这样的图书馆:

反应-本机阅读-更多文本

这是吉特卜的讨论。基本上,我们的想法是使用computeLines函数来实际计算每一行的长度。

票数 0
EN

Stack Overflow用户

发布于 2019-04-14 10:05:15

我不知道这会不会对你有帮助。但这就是我在我的案子里所做的。它对我起了作用

代码语言:javascript
运行
复制
import * as React from 'react';
import {
  Text,
  View,
  StyleSheet,
  TextInput,
  TouchableOpacity,
} from 'react-native';

export default class Myapp extends React.Component<{}> {
  constructor(props) {
    super(props);
    this.state = {
      text: '...more' + '\n',
      number: 2,
    };
    this.dl =
      'Lorem ipsum dolor sit amet, putant ancillae voluptaria eos te, eum et justo impetus. Tincidunt efficiendi eu mei, sea at aeque persius. Quo commodo molestie similique eu, pri ei utroque lucilius. Eum cu everti iriure, in duo ludus urbanitas intellegam. Partiendo molestiae et eos, mei wisi cetero recteque ex.sddaefrwtttb tguirdg';
  }

  render() {
    return (
      <View style={styles.container}>
        <Text numberOfLines={this.state.number} ellipsizeMode={'middle'}>
          {this.dl.substr(0, 80)}
          <Text
            onPress={() =>
              this.setState({ number: null, text: this.dl.substr(80) })
            }>
            {this.state.text}
          </Text>
        </Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    padding: 8,
  },
  paragraph: {
    margin: 24,
    fontSize: 18,
    fontWeight: 'bold',
    textAlign: 'center',
  },
});

它并不完美,但我认为它会给你一个想法,世博链接

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55673205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档