React Native中使用了哪些维度单位?

时间:2016-05-16 07:01:24

标签: react-native

使用React Native定义一些样式尺寸时,没有任何单位:

welcome: {
  fontSize: 20,
  margin: 10,
}

我认为原因是因为它是跨平台代码,iOS和Android使用不同的单位。

docs并不是很有用,因为所有示例都使用rem单位,而且没有任何地方提及单位。

那么每个平台使用的单位是什么?

修改:other answer并未说明Android中使用的单位。我假设它是dp,但它并未在任何地方指定。

1 个答案:

答案 0 :(得分:11)

单位是iOS的逻辑像素。请参阅问题here,这是由React Native的贡献者回答的。

对于Android,单位在DIP,这有点类似于iOS中的逻辑点(主题上有一个很好的write up)。如果您在此处查看源代码 - https://github.com/facebook/react-native/blob/235b16d93287061a09c4624e612b5dc4f960ce47/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java#L24,您会看到他们转换了提供的值toPixelFromDIP