我在我的 Android 应用程序中使用 EventBus。在我的 mainActivity 中,我有这个处理程序方法,它将实时数据发送到 EventBus,如下所示:
private final Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case TGDevice.MSG_STATE_CHANGE:
EventBus.getDefault().postSticky(msg.arg1);
...
我正在使用 Fragments 类,我需要从处理程序接收消息。
我已经在 onCreateView 方法中注册了 Fragment 类,如下所示:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_data_log, container, false);
EventBus.getDefault().register(this);
tv = (TextView) view.findViewById(R.id.tv);
}
public void onEvent(Message message){
tv.setText("Signal" + message);
}
而且我有 onEvent 方法,该方法应该在有事件时调用。不幸的是,这个方法永远不会被调用。我认为这可能是被覆盖的方法,但似乎不是。
我需要做什么才能从 EventBus 中读取消息?
另外,在调试模式下,我在哪里可以看到正在创建的线程数?(我正在使用 Android Studio)