如何使用Expo框架测量React Native中的文本

时间:2017-11-06 00:43:46

标签: android react-native expo

我目前正在尝试根据Expo制作我的React Native应用程序,而不会降低到本机依赖关系。我想知道是否有一种方法可以测量文本(直到像素),这样我就可以做出一些关于布局的明智选择,而不会出现消极或奇怪的包装。

基本上我希望能够做到这样的事情:

//Pseudo Code
class SomeScreen extends React.Component {
  //returns a height that fits the width without wrapping
  fitToWidth(text, width) { 
    //I don't have a framework for this in Expo
  }
  render() {
    <View>
      <MyText fontSize={fitToWidth('SomeString', 375)} value='Some String' />
    </View>
  }
}

由于测试的简易性,我很高兴在世博会上进行这项运动,我希望有人知道如何实现这一目标。我可以使用一些库,但它需要退出Expo构建过程,这意味着它不再是可移植的。

我意识到要做到这一点还有很多工作要做,但我已经可以弄清楚视图的宽度和高度了,我希望我能找到一种方法来测量文本来选择基于屏幕大小的字体,而不是试图依赖点。

1 个答案:

答案 0 :(得分:0)

您需要将onLayout事件附加到视图中。一旦RN计算出来,您就可以获得尺寸。

https://facebook.github.io/react-native/docs/view.html#onlayout