react-native 自定义原生view事件

react-native文档未更新,照着文档实现还是坑了不少,记录下基本步骤。

1,继承实现com.facebook.react.uimanager.events.Event类MyEvent
getViewTag:接受事件view,传view.getId()
getEventName:事件名称
dispatch:产生方法
@Override
public void dispatch(RCTEventEmitter rctEventEmitter) {
    rctEventEmitter.receiveEvent(getViewTag(), getEventName(), serializeEventData());
}
2,在ViewManager必须实现方法getExportedCustomDirectEventTypeConstants
    public @Nullable
    Map getExportedCustomDirectEventTypeConstants() {
        return MapBuilder.builder()
                .put("onUpdateView", MapBuilder.of("registrationName", "onUpdateView"))
                .build();
    }

3,触发
reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher().dispatchEvent(new MyEvent(getId(),SystemClock.nanoTime(),rowId));

 

转载于:https://my.oschina.net/droidwolf/blog/759517

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值