gpt4 book ai didi

react-native - 使用 SimpleViewManager 创建桥接模块时不调用 View 子类的 onDraw 方法

转载 作者:行者123 更新时间:2023-12-01 12:24:21 26 4
gpt4 key购买 nike

我正在 android 中创建一个自定义 View ,并在我的 React Native 项目中将此 View 添加到 JS 组件上,我使用 ReactPackage 方法创建了一个桥接模块:

@覆盖

public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
List<ViewManager> list = new ArrayList<>();
list.add(new MyCustomViewModule(reactContext));
return list;
}

并在方法中传递 SimpleViewManager 子类 (MyCustomViewModule) 中 View 的自定义子类的对象:

@覆盖

protected View createViewInstance(ThemedReactContext reactContext) {
return new CustomView(reactContext);
}

我的问题是 onDraw 方法不是调用 CustomView 类。桥接模块启动时调用onDraw方法怎么办?

最佳答案

onDraw 未调用,因为当您在 JS 组件中呈现自定义 View 时需要一些 Prop 。您应该在 View 中将宽度和高度作为样式 Prop 传递,例如:

render() {
<Your_module_view style={{width:100, height:100}}/>
}

在这里您可以根据您的 View 布局传递任何宽度和任何高度。

关于react-native - 使用 SimpleViewManager 创建桥接模块时不调用 View 子类的 onDraw 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41507551/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com