EventBus實現兩個Fragment直接的跳轉

莫非有道發表於2018-01-03

EventBus是一款針對Android優化的釋出/訂閱事件匯流排。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,執行緒之間傳遞訊息.優點是開銷小,程式碼更優雅。以及將傳送者和接收者解耦。

下面我就將主要的步驟給大家說一下:
(傻瓜式開發主要是幫助大家能實現效果),首先匯入依賴compile `de.greenrobot:eventbus:3.0.0-beta1`;

隨便建立一個類 那個就是物件
EventBus.getDefault().post(new event());//先建立一個物件 傳送這個物件

找到要跳轉的那個Fragment的父類也就是那個Activity。在onCreate方法裡面註冊,具體程式碼如下:

//註冊  傳入上下文
        EventBus.getDefault().register(this);
//在onDestoy 裡面反註冊
    @Override
    public void onDestroy() {
        super.onDestroy();
        EventBus.getDefault().unregister(this);
    }
 //執行緒型別設定為主執行緒
    @Subscribe(threadMode = ThreadMode.MainThread)
    //隨便寫一個方法傳入那個物件
    public void Recepiion(event event)
    {
        //頁面跳轉
        disc_Viewpager.setCurrentItem(0);(這個就是設定讓顯示的頁面裡面引數為下標)
    }

原文地址:http://www.apkbus.com/blog-927916-76799.html


相關文章