当前位置:   article > 正文

Android 笔记: 子线程请求网络 与主线程通信 渲染UI 使用handler_主线程和网络线程的交互

主线程和网络线程的交互
 @SuppressLint("HandlerLeak")
    Handler handler;
  • 1
  • 2

首先在activity里声明 Handler
然后在子线程中请求网络
Message 对象在子进程中声明

Message message = new Message();
message.what = 1;
Bundle bundle = new Bundle();
bundle.putString("msg", "此电脑已经开机");
message.setData(bundle);
handler.sendMessage(message);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

回到主线程
用 handler 接收message

handler = new Handler(Looper.myLooper()) {
            @Override
            public void handleMessage(Message msg) {
                if (msg.what == 1)
                    Toast.makeText(MainActivity.this, msg.getData().getString("msg"), Toast.LENGTH_LONG).show();
            }
        };
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在handle Message 方法中可以渲染UI

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/465114
推荐阅读
相关标签
  

闽ICP备14008679号