The Wayback Machine - https://web.archive.org/web/20201124211617/https://github.com/ladingwu/SimpleRxBusApplication
Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
app
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

SimpleRxBus

一个更加简单易用的RxBus

  • 使用简介

    • 集成
     //请确保原来项目中已经引入了RxJava2.0+的依赖,如没有,请引入
    implementation 'com.ladingwu.library:SimpleRxBus:0.3'
     // 需要v7的support包,如果原项目中已经存在,则不必引入
    implementation 'com.android.support:appcompat-v7:28.0.0'
    
    
    
    • 发送普通事件
    RxBusUtils.post("filter_message",mesage);
    
    • 接收事件(自动取消订阅)
    // in Fragment or FragmentActivity
     RxBusUtils.receive(this,"filter_message", new RxBusReceiver<Object>() {
                @Override
                public void receive(Object message) {
                    // handle this
                }
            });
    
    • 发送粘性事件
    RxBusUtils.postSticky("filter_sticky_message",message);
    
    • 接收粘性事件(自动取消订阅)
    // in Fragment or FragmentActivity
    RxBusUtils.receiveSticky(this,"filter_message", new RxBusReceiver<Object>() {
                @Override
                public void receive(Object message) {
                        // handle this
                }
            });
    
    • 特殊情况
    //如果无法拿到Fragment/FragmentActivity的实例,则接收事件的时候,需要自行处理取消注册的工作
        Disposable disposable = RxBusUtils.receive("filter", new RxBusReceiver<Object>() {
            @Override
            public void receive(Object data) {
                // handle this
            }
        });
    
        // 在合适的时机取消注册
        if (disposable != null && !disposable.isDisposed()) {
            disposable.dispose();
        }
    
  • SimpleRxBus的优点

    • 简单,好用,支持普通事件/粘性事件的收发
    • 无需显式的调用注册和取消注册接口,框架会自动注册,并且根据生命周期会自动取消注册
    • 即插即用,无论是新项目还是老项目,都不需要做额外的处理,在这一点上,对老项目尤为友好

About

an easy bus

Topics

Resources

License

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.