handler

handler android中的异步,多线程方法 ——总结

参考文档

  • 一般情况我们的使用方法就是这样了

    1) looper: 一个线程可以产生一个looper对象,由它来管理此线程里的message queue(消息队列)

    2) handler: 你可以构造一个handler对象来与looper沟通,以便push新消息到messagequeue里;或者接收looper(从messagequeue里取出)所送来的消息。

private Handler handler = new Handler()){
    public void handleMessage(android.os.Message msg) {
        switch (msg.what) {
        case 1:
            Toast.makeText(MainActivity.this, "获取数据失败", 0).show();
            break;
        case 2:
            Toast.makeText(MainActivity.this, "获取数据失败", 0).show();
            break;

        }
    };  

    private Runnable myRunnable= new Runnable() {    
        public void run() {  

            if (run) {  
                handler.postDelayed(this, 1000);  
                count++;  
            }  
            tvCounter.setText("Count: " + count);  
            handler.sendEmptyMessage(1);

        }  
    };
  • 当然我们还有其他的办法
     采用runOnUiThread(new Runnable()),这要实现Runnable借口,我们可以直接在这个线程中进行UI的更新。是api提供的方法,较为便捷。
    private Runnable myRunnable= new Runnable() {    
        public void run() {  

 runOnUiThread(new Runnable() {

                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        Toast.makeText(MainActivity.this, result, 0).show();
                    }
                });
        }  
    };
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值