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);
                }
            });

                 

        

              

  • 相关阅读:
    Google Maps API 进级:通过XML文档加载Gpolyline或者Gpolygon
    Google Maps API 进级: GPolygon对象2
    Google Maps API 进级: GoogleMaps常用事件及应用思路2
    debian下安装JDK
    sudo 提示用户不在sudoers文件错误
    debian关闭开机自动启动时候的gui
    debian解决中文乱码,安装chinese font
    debian下intel 3945abg和T420无线网卡驱动
    debian修改系统时区
    wheezy安装oracle jdk的jdk之中文乱码处理
  • 原文地址:https://www.cnblogs.com/lpe110/p/2440898.html
Copyright © 2011-2022 走看看