zoukankan      html  css  js  c++  java
  • android handler 基本使用 1

     

      Handler基本概念:
           Handler主要用于异步消息的处理:当发出一个消息之后,首先进入一个消息队列,发送消息的函数即刻返回,而

           另外一个部分逐个的在消息队列中将消息取出,然后对消息进行处理,就是发送消息和接收消息不是同步的处理。

           这种机制通常用来处理相对耗时比较长的操作。

       分两个例子来熟悉 1、简单的Handler使用 2、Handler 操作进度条

       示例 1 

           步骤:1 新建android应用程序

                   2 添加布局文件,并在其中添加两个按钮,按钮1 开始操作,按钮2结束操作    

                   3 在Activity中创建Handler对象

                      

                     
     Handler handler = new Handler();

                   4 在Activity中以匿名内部类的方式创建Runnable 对象,

                      把要执行的操作写在Runnable对象的run方法中

                     

    Runnable runable = new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                System.out.println("Runnable");
                handler.postDelayed(runable, 2000);//延时2秒执行
            }
        };

                   5 在Activity中 绑定按钮1 的监听事件,在这个监听器的onClick方法中调用

                      Handler对象的post方法,把要执行的线程对象(Runnable)放入到队列中。   

    btnButton1.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    handler.post(runable);
                }
            });

                   6 在Activity中 绑定按钮2 的监听事件,在这个监听器的onClick方法中调用

                      Handler对象的 removeCallbacks 方法 ,把执行的线程移除队列。

    btnButton2.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    handler.removeCallbacks(runable);
                }
            });

                 

        

              

  • 相关阅读:
    秒杀系统性能测试和优化
    性能测试分析过程(三)linux下查看最消耗CPU/内存的进程
    [改善Java代码]注意方法中传递的参数要求(replaceAll和replace的区别)
    [改善Java代码]由点及面,一叶知秋----集合大家族
    [改善Java代码]非稳定排序推荐使用List
    [改善Java代码]多线程使用Vector或HashTable
    [改善Java代码]减少HashMap中元素的数量
    [改善Java代码]使用shuffle打乱列表
    [改善Java代码]集合运算时使用更优雅的方式
    [改善Java代码]集合中的元素必须做到compareTo和equals同步
  • 原文地址:https://www.cnblogs.com/lpe110/p/2440898.html
Copyright © 2011-2022 走看看