• android的注意点


    1.使用Message.callback

    [java] view plaincopy
     
    1. Message msg = Message.obtain(myThreadHandler,new Runnable() {  
    2.       
    3.     @Override  
    4.     public void run() {  
    5.         Log.d(Constant.TAG, MessageFormat.format("Thread[{0}]--myThreadHandler.Message.callback.run",  
    6.                 Thread.currentThread().getName()));   
    7.     }  
    8. });  
    9. myThreadHandler.sendMessage(msg);  

    2.使用Handler.post

    [java] view plaincopy
     
    1. myThreadHandler.post(new Runnable() {  
    2.                       
    3.                     @Override  
    4.                     public void run() {  
    5.                         Log.d(Constant.TAG, MessageFormat.format("Thread[{0}]--myThreadHandler.Message.callback.run",  
    6.                                 Thread.currentThread().getName()));   
    7.                     }  
    8.                 });  

    注:对于Handler机制相关测试,我写了一个测试类:

    http://download.csdn.net/source/3275970

    3.Handler对Activity finish影响。

    在开发的过程中碰到一个棘手的问题,调用Activity.finish函数Acitivity没有执行生命周期的ondestory函数,后面查找半天是因为有一个handler成员,因为它有一个delay消息没有处理,调用Activity.finish,Activity不会马上destory,所以记得在Ativity finish前清理一下handle中的未处理的消息,这样Activity才会顺利的destory

  • 相关阅读:
    Sam小结和模板
    K-string HDU
    str2int HDU
    Common Substrings POJ
    Reincarnation HDU
    实体框架自动迁移出现异常。
    C#代码配置IIS 操纵IIS
    MVC项目页面获取控制器的信息
    通过js判断手机访问跳转到手机站
    "Could not load file or assembly 'DTcms.Web.UI' or one of its dependencies. 拒绝访问。" 的解决办法
  • 原文地址:https://www.cnblogs.com/daishuguang/p/3684216.html
Copyright © 2020-2023  润新知