1. 使用Handler中的sendEmptyMessage(int what)方式来发送消息.
    点击按钮发送消息,在Handler中做消息的处理。只发送一个带有what属性的消息。
case R.id.button1:      new Thread(new Runnable() {          // 查看Handler的api,它有几种sendMessage()的方式          @Override          public void run() {              // 使用public final boolean sendEmptyMessage (int what)              mHandler.sendEmptyMessage(3);          }      }).start();      break;

2.使用Handler中的sendEmptyMessageAtTime(int what,long uptimeMillis)方式来发送消息.

case R.id.button1:      new Thread(new Runnable() {          // 查看Handler的api,它有几种sendMessage()的方式          @Override          public void run() {              // 使用public final boolean sendEmptyMessageAtTime (int what, long uptimeMillis)              mHandler.sendEmptyMessageAtTime(3, 1000);          }      }).start();      break; 

3.使用Handler中的sendEmptyMessageDelayed (int what, long delayMillis)方式来发送消息.

case R.id.button1:      new Thread(new Runnable() {          @Override          public void run() {              /*              * 使用public final boolean sendEmptyMessageDelayed (int what, long delayMillis)              * 发送带有what属性值的消息,在延时3秒钟后发送              */              mHandler.sendEmptyMessageDelayed(3, 3000);            }      }).start();      break; 

4.使用Handler中的sendMessage (Message msg)方式来发送消息.

case R.id.button1:      new Thread(new Runnable() {          // 查看Handler的api,它有几种sendMessage()的方式          @Override          public void run() {              /*              * 使用public final boolean sendMessage (Message msg)              */              // 使用Message.obtain()获取message对象              // Message msg = Message.obtain();               // 使用Handler获取message对象,两种获取都可以              Message msg = mHandler.obtainMessage();               msg.arg1 = 1;              msg.what = 3;              msg.obj = "AHuier";              mHandler.sendMessage(msg);          }      }).start();      break; 

结合上面分析的内容,我们可以知道android 中发送消息不管是Message中的几种重载的obtain()方式,还是Handler中的几种重载的sendMessage最终都是通过Handler.sendMessage来发送的,而Handler中的几种sendMessage()重载方法最终都会调用到sendMessageAtTime()方法来完成消息的入队操作。

转载地址:http://blog.csdn.net/ahuier/article/details/17013647

更多相关文章

  1. Android点击事件的四种实现方式
  2. Android使用HttpPost向服务器发送Json数据
  3. Android(安卓)使用SharedPreferrences储存密码登录界面记住密码
  4. Android(安卓)永久保存数据
  5. Android通过queryIntentActivities自定义发送功能
  6. android横竖屏切换不重启activity解决方案
  7. Android(安卓)Fragment与activity交互方式
  8. 【Android(安卓)UI设计】之自定义计时器
  9. [Android]Ams 广播发送原理(三)

随机推荐

  1. Android系统四层架构分享
  2. android ANR分析与如何处理
  3. Android 取得手机屏幕大小
  4. Wifi学习
  5. 【Android(安卓)系统开发】使用 Source I
  6. android OTA 升级优化之一: recovery支持
  7. Android的从Linux启动
  8. Android(安卓)数据库 大量插入 事务开启
  9. Gradle 修改 Maven 仓库地址
  10. android recovery.img定制之recovery.fst