我目前正在尝试根据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构建过程,这意味着它不再是可移植的。
我意识到要做到这一点还有很多工作要做,但我已经可以弄清楚视图的宽度和高度了,我希望我能找到一种方法来测量文本来选择基于屏幕大小的字体,而不是试图依赖点。
答案 0 :(得分:0)
您需要将onLayout事件附加到视图中。一旦RN计算出来,您就可以获得尺寸。
https://facebook.github.io/react-native/docs/view.html#onlayout