2018-08-01 RN,android原生添加DEBUG菜单条目的方法

RN项目有一个主控制类ReactNativeHost,

当需要实现接口ReactApplication或者继承ReactActivityDelegate类的时候(以及其他需要用到ReactNativeHost的场景),就可以得到一个ReactNativeHost实例,

ReactNativeHost实例下有一个ReactInstanceManager的实例,

ReactInstanceManager实例有一个DevSupportManager实例,

我们就可以通过DevSupportManager实例的addCustomDevOption(String optionName, DevOptionHandler optionHandler)方法添加更多的debug菜单项,

optionName是菜单显示的文案,

optionHandler是点击事件的回调,可以添加响应处理。

具体添加办法是,在写一个ReactNativeHost匿名内部类或者ReactNativeHost的继承类的时候重写createReactInstanceManager()方法,返回ReactInstanceManager实例之前调用ReactInstanceManager的getDevSupportManager().addCustomDevOption(String optionName, DevOptionHandler optionHandler)方法添加新条目。

样例代码如下:

@Override

    protected ReactInstanceManager createReactInstanceManager() {


      ReactInstanceManager manager =super.createReactInstanceManager();

manager.getDevSupportManager().addCustomDevOption("条目名1",new DevOptionHandler() {

@Override

        public void onOptionSelected() {

//添加响应操作

}

});

manager.getDevSupportManager().addCustomDevOption("条目名2",new DevOptionHandler() {

@Override

        public void onOptionSelected() {

//添加响应操作

}

});

return manager;

}

};

谢谢阅览!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • Spring Web MVC Spring Web MVC 是包含在 Spring 框架中的 Web 框架,建立于...
    Hsinwong阅读 22,589评论 1 92
  • 2.抵制把你的观点看作事实的诱惑。这种诱惑有可能是强大的。一旦你形成了这种观点,就自然地与它联系在一起,就像父母与...
    sxrunn阅读 287评论 0 1
  • 有些俗语,隐含着人生智慧在里面,但是不深究其中道理,有时反而会被误导。像“戏棚下,站久了就是你的”这句俗语。“戏棚...
    公子义阅读 628评论 0 0