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

                 

        

              

  • 相关阅读:
    C# 打开模态对话框 和打开文件夹
    C# 统计字符串出现的个数
    html table内容不随标题滚动
    log4net 局部代码 看不懂....
    js的replace, 高亮, insertAdjacentHTML , tbody.innerHTML
    python之tkinter使用举例-Button
    使用pygal_maps_world.i18n中数据画各大洲地图
    使用pygal_maps_world展示世界地图
    python之pygal:掷两个不同的骰子并统计大小出现次数
    python之文件目录操作
  • 原文地址:https://www.cnblogs.com/lpe110/p/2440898.html
Copyright © 2011-2022 走看看