发布于2021-10-16 09:32 阅读(527) 评论(0) 点赞(19) 收藏(1)
我在我的 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)
不幸的是,这个方法从未被调用
那是因为您onEvent()
需要一个Message
,并且(大概)您没有发布Message
. 您正在发布任何arg1
内容。
另外,在调试模式下,我在哪里可以看到正在创建的线程数?(我正在使用 Android Studio)
进入 Android Debug Monitor(从主菜单中选择 Tools > Android > Android Debug Monitor),DDMS 里面有一个线程视图。
作者:黑洞官方问答小能手
链接:http://www.javaheidong.com/blog/article/303948/68761e20ae1cfa8242e0/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!