obtainmessage()是从消息池中拿来一个msg 不需要另开辟空间new

new需要重新申请,效率低,obtianmessage可以循环利用;

//use Handler.obtainMessage(),instead of msg = new Message();//because if there is already an Message object,that not be used by //any one ,the system will hand use that object,so you don't have to //create and object and allocate memory.//it  is also another example of object recycling and reusing in android.Message msg = mHandler.obtainMessage();msg.what = UPDATE_LISTVIEW;msg.obj = current + "/" + total + "songs";//this method is called from worker Thread,so we cannot update UI from here.msg.sendToTarget();
在看下面代码:
Message msg = handler.obtainMessage();                        msg.arg1 = i;                        msg.sendToTarget(); Message msg=new Message();    msg.arg1=i;    handler.sendMessage(msg);

第一种写法是message 从handler 类获取,从而可以直接向该handler 对象发送消息,第二种写法是直接调用 handler 的发送消息方法发送消息。

更多相关文章

  1. Android(安卓)Studio添加Parcelable序列化小工具(快速提高开发效
  2. Android滑动组件----RecyclerView
  3. Android为什么要用JAVA做应用开发语言而不用C/C++
  4. 知乎日报 - 我的第一个Kotlin项目
  5. 关于Android加快应用崩溃效率
  6. Android中通过xml给布局添加边框
  7. 让你的Android开发效率提高10倍的开源工具库AndroidTools的使用
  8. Android(安卓)NDK开发技巧二
  9. Android中的几种单例模式的写法

随机推荐

  1. Mysql中的join操作
  2. win10下安装两个MySQL5.6.35数据库
  3. win10 mysql 5.6.35 winx64免安装版配置
  4. mysql 5.5 安装配置图文教程
  5. MySQL数据库卸载的完整步骤
  6. mybatis分页插件pageHelper详解及简单实
  7. mysql 创建root用户和普通用户及修改删除
  8. Mysql保持现有内容在后面增加内容的sql语
  9. mysql 获取规定时间段内的统计数据
  10. mysql5.7.14解压版的安装图文教程