Android浜嬩欢鎬荤嚎妗嗘灦濡備綍浣跨敤
Android浜嬩欢鎬荤嚎妗嗘灦鍙互甯姪绠€鍖朅ndroid搴旂敤绋嬪簭涓粍浠朵箣闂寸殑閫氫俊銆備互涓嬫槸涓€涓畝鍗曠殑绀轰緥锛屽睍绀哄浣曚娇鐢ˋndroid浜嬩欢鎬荤嚎妗嗘灦EventBus锛?/p>
- 闆嗘垚EventBus搴擄細棣栧厛锛屽湪浣犵殑Android椤圭洰涓坊鍔燛ventBus搴撶殑渚濊禆锛屽彲浠ラ€氳繃Gradle杩涜娣诲姞锛?/li>
implementation 'org.greenrobot:eventbus:3.2.0'
- 鍒涘缓浜嬩欢绫伙細瀹氫箟涓€涓簨浠剁被锛岀敤浜庝紶閫掓暟鎹€備緥濡傦紝鍒涘缓涓€涓悕涓篗essageEvent鐨勪簨浠剁被锛?/li>
public class MessageEvent {
public String message;
public MessageEvent(String message) {
this.message = message;
}
}
- 娉ㄥ唽鍜屽彇娑堟敞鍐屼簨浠讹細鍦ㄩ渶瑕佹帴鏀朵簨浠剁殑缁勪欢涓敞鍐屽拰鍙栨秷娉ㄥ唽浜嬩欢锛屼緥濡傚湪Activity鎴朏ragment涓細
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
- 鍙戝竷浜嬩欢锛氬湪闇€瑕佸彂閫佷簨浠剁殑鍦版柟锛岄€氳繃EventBus鍙戝竷浜嬩欢锛?/li>
EventBus.getDefault().post(new MessageEvent("Hello EventBus!"));
- 鎺ユ敹浜嬩欢锛氬湪娉ㄥ唽浜嗕簨浠剁殑缁勪欢涓紝閫氳繃@Subscribe娉ㄨВ鏉ユ帴鏀朵簨浠讹細
@Subscribe
public void onMessageEvent(MessageEvent event) {
String message = event.message;
// 澶勭悊鎺ユ敹鍒扮殑浜嬩欢
}
浠ヤ笂鏄竴涓畝鍗曠殑Android浜嬩欢鎬荤嚎妗嗘灦EventBus鐨勪娇鐢ㄧず渚嬨€傞€氳繃浣跨敤浜嬩欢鎬荤嚎妗嗘灦锛屽彲浠ユ柟渚垮湴瀹炵幇缁勪欢涔嬮棿鐨勯€氫俊锛屽噺灏戣€﹀悎鎬у拰绠€鍖栦唬鐮併€?/p>
相关问答