gpt4 book ai didi

android - EventBus OnEvent() 没有被调用

转载 作者:行者123 更新时间:2023-11-29 01:23:25 25 4
gpt4 key购买 nike

您好,我正在使用事件总线将数据从一个 fragment 传递到另一个 fragment

从 fragment-1 我正在做如下

@Override
public void onPause() {
bsValues = new BoreShaftValues(strtext, strtextshaft);
bus.post(bsValues);
super.onPause();
}

在 Fragment-2 中,我在 OnActivitycreated 中注册了总线

@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
bus.register(this);
}

然后我将 OnEvent() 方法放在 fragment-2 中

public void onEvent(BoreShaftValues event){
boregradeselect.setText(event.getBoreData());
shaftgradeselect.setText(event.getShaftData());
}

下面是我的 BoreshaftVales

public class BoreShaftValues {
private String boredata;
private String shaftdata;

public BoreShaftValues(String boredata, String shaftdata){
this.boredata = boredata;
this.shaftdata = shaftdata;
}

public String getBoreData(){
return boredata;
}
public String getShaftData(){
return shaftdata;
}
}

但是这个 OnEvent() 方法根本没有被调用。我做的对吗?

最佳答案

我通常会尝试将 EventBus 绑定(bind)回 Activity,同时使其松散耦合。因此,在 Fragment 生命周期中,我在 onAttach 中注册了 EventBus,并在 fragment 中的 onDetach 方法中注销了它。

关于android - EventBus OnEvent() 没有被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35428887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com