Ios React Native:如何动态计算自定义本机UITextView高度

Ios React Native:如何动态计算自定义本机UITextView高度,ios,swift,react-native,react-native-native-ui-component,Ios,Swift,React Native,React Native Native Ui Component,我正在开发一个现有的iOS应用程序,其中我使用React Native添加了新功能。 到目前为止效果很好。现在,我必须使用已经开发的自定义本机Swift UITextView子类。正在从API获取文本。因此UITextView的大小应该是动态的 在React Native方面,它如下所示: import { requireNativeComponent } from 'react-native'; export const NativeTextView = requireNativeCompo

我正在开发一个现有的iOS应用程序,其中我使用React Native添加了新功能。 到目前为止效果很好。现在,我必须使用已经开发的自定义本机Swift UITextView子类。正在从API获取文本。因此UITextView的大小应该是动态的

在React Native方面,它如下所示:

import { requireNativeComponent } from 'react-native';

export const NativeTextView = requireNativeComponent('RNNativeTextView');

export default function FooView(props: FooViewProps) {
    return (
        <View
            style={{
                ...props.style,
                flexDirection: 'row',
                flexWrap: 'wrap',
                backgroundColor: 'red',
                margin: Dimensions.generalPadding * 2,
            }}
        >
            <NativeTextView
                text={props.viewModel.aboutMeText}
                textColorString={Colors.red}
                backgroundColor={Colors.black}
                style={{
                    ...regularTextStyle,
                    width: "100%",
                    flexDirection: 'row',
                }}    />
        </View>
    )
}
#导入
#进口
@接口RCT_外部模块(RNNativeTextViewManager、RCTViewManager)
RCT\u导出\u视图\u属性(文本,NSString)
RCT\u导出\u视图\u属性(textColorString、NSString)
+(BOOL)requiresMainQueueSetup{返回是;}
@结束
像这样,根本不显示文本视图。这是因为NativeTextView的高度为0。如果为样式设置静态固定高度,则NativeTextView将按预期进行渲染。但是我想要的是一个动态的高度,当然这取决于文本的长度

试图在dev文档中找到解决方案,但没有发现任何真正有用的东西。我错过了什么?如何计算此UITextView的高度是一种良好且有效的方法


@objc(RNNativeTextView)
class NativeTextView: UITextView {
   ... (native implementation)
}
import Foundation

@objc(RNNativeTextViewManager)
class RNNativeTextViewManager: RCTViewManager {

    override func view() -> UIView! {

        let textView = NativeTextView(frame: CGRect(x: 0, y: 0, width: .zero, height: .zero))
        return textView
  }
}
#import <React/RCTBridgeModule.h>
#import <React/RCTViewManager.h>


@interface RCT_EXTERN_MODULE(RNNativeTextViewManager, RCTViewManager)

RCT_EXPORT_VIEW_PROPERTY(text, NSString)
RCT_EXPORT_VIEW_PROPERTY(textColorString, NSString)

+ (BOOL)requiresMainQueueSetup { return YES; }

@end