我试图将回调函数传递给我的Android本机视图,但出现错误.我可以通过回调将其视为道具,还是仅可通过调用react方法使用?
这是我的代码:
包.java
public class RMTGesturePackage implements ReactPackage {
@Override
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
return Collections.emptyList();
}
@Override
public List<Class<? extends JavaScriptModule>> createJSModules() {
return Collections.emptyList();
}
@Override
public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
return Arrays.<ViewManager>asList(
new RMTGestureManager());
}
RMTGestureManager.java
@ReactProp(name="onChangeCallback")
public void onChange(RMTGlSurfaceView rmtGlSurfaceView, final Callback onChangeCallback) {
}
NativeGesture.js
<NativeRMTGesture onChangeCallback={function(){}}/>
react-native运行android传递没有错误,但在模拟器上我得到“方法无法识别:接口com.facebook.bridge.Callback:
com.rmtgesture.RMTGestureManager#onChange“
解决方法:
是的,目前他们不支持ReactProp注释方法中的回调ReactProp.java
请改用事件!示例:ReactSwitchManager.java