我对React本机和iOS都很陌生。我有一个原生的Scrollview A,它包含另一个本地Scrollview B和一个ReactView(RCTRootView)作为一个在另一个下面的子视图。我需要将Scrollview A的contentHeight设置为等于Scrollview B和ReactView的内容高度。
为此,我尝试了这两种方法:
- 使用'onLayout'属性计算React Native中顶级视图的高度,并通过桥将其传递给native,然后将本机视图的contentHeight设置为等于此高度。虽然我在本机中获得高度,但是当从桥接方法内部访问时,我发现本机视图为nil:RCT_EXPORT_METHOD()
- 为RCTRootView设置模式'RCTRootViewSizeFlexibilityHeight',将我的视图控制器设置为委托,并根据反应视图高度更改设置本机滚动视图的内容高度,如下所述:https://facebook.github.io/react-native/docs/communication-ios.html#react-native-content-with-flexible-size。但是使用这种方法,当我设置'RCTRootViewSizeFlexibilityHeight'模式时,反应视图不会显示,并且代理也不会按预期调用。
醇>
我在这些方法中做错了什么?我怎样才能做到这一点?