【问题标题】:How do you get the size of the frame in ReactNative?你如何在 React Native 中获取框架的大小?
【发布时间】:2015-10-14 22:25:21
【问题描述】:

在 Swift 或 Objective-C 中,您可以使用 self.frame.size.width,但在 ReactNative 中等效的是什么?

【问题讨论】:

    标签: ios objective-c swift reactjs react-native


    【解决方案1】:

    您应该在您想要获得宽度(以及其他)的视图上运行“测量”方法(您可以为任何组件运行它,甚至是整个视图):

    this.refs.myRef.measure((a, b, width, height, px,py ) =>
       this.setState({ myWidth: width })
    );
    

    请注意,您可能会陷入一些陷阱(安装组件后立即未定义的引用),这可以通过带有超时的丑陋黑客来解决:React-Native : measure a View

    【讨论】:

      【解决方案2】:

      我找到了一个方便的库react-native-device。你会打电话给 Device.width()

      https://github.com/GertjanReynaert/react-native-device

      (已编辑)

      实际上,那个库最终破坏了我的应用程序。一个更简单的方法是要求 Dimensions.js 内置在 react 中

      var Dimensions = require('Dimensions'); Dimensions.get('window').width);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-24
        • 2018-10-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多