EventBus 서로다른 엑티비티/프래그먼트 사이 이벤트 발생값 전달 > Kotlin

본문 바로가기

사이트 내 전체검색

Kotlin

EventBus 서로다른 엑티비티/프래그먼트 사이 이벤트 발생값 전달

작성일 20-07-19 13:45

페이지 정보

작성자sbLAB 조회 3,401회 댓글 0건

본문



[gradle]

//EventBus
implementation 'org.greenrobot:eventbus:3.2.0'

[전달할 데이타 구조 Static Data Class]
    /** EventBus */
    data class MessageEvent(
        var bodystringString?
    ){
        constructor() : this("")
    }
}

[이벤트 값 발생, 예)FCM Notification]
//이벤트발생 엑티비티에서 타켓Activity 로 이벤트로 값전달
EventBus.getDefault().post(MessageEvent("전달할값"))

[이벤트 값 수신]-------------------
override fun onCreate(savedInstanceStateBundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_find)
}

/** ------------[EventBus]-------------------- */
@Subscribe(threadMode = ThreadMode.MAIN)
fun onMessageEvent(eventMessageEvent?) { 
/* Do something */
myedit.setText(event?.bodystring.toString())
}

override fun onStart() {
    super.onStart()
    EventBus.getDefault().register(this)     //EventBus 수신대기 등록
}

override fun onStop() {
    super.onStop()
    EventBus.getDefault().unregister(this)  //EventBus 수신대기 해제
}

----------------------------------------------------
 



댓글목록

등록된 댓글이 없습니다.

Copyright © 소유하신 도메인. All rights reserved.
PC 버전으로 보기